New 'Steering agile architecture' course

Humane assessment is a versatile and generic method. That is both a strength and a weakness. The strength is that it can be applied in many situations. The weakness is that it is perceived to be too distant from concrete scenarios that development teams face.

To bridge the perception gap, I have started to look since a couple of years for classes of problems that are concrete enough to be directly applicable. The first one is that of steering agile architecture for which I designed a 2-day course.

The concept of architecture started to regain traction recently. For example, two new industrial conferences were launched recently on the subject [1] [2]. That’s a good thing.

However, there are still quite some open questions as to how architecture fits within agile development. Of course, the main focus still tends to be placed on how to create architecture, and less about how to deal with the existing one. Humane assessment fills the latter space quite well. Specifically, the daily assessment process helps teams to make architecture concerns explicit and keep track of what goes on in the system. That is why the course is not about good or bad architecture. It’s about knowing the real architecture of your software system, and choosing to how to steer based on that reality.

If you are interested in working with me, please drop me an email.

Here is a teaser video.

Posted by Tudor Girba at 28 July 2015, 10:50 pm with tags course, assessment, architecture comment link

Talk on "Steering agile architecture" at Agile Breakfast Luzern on July 16, 2015

On July 16, I will give a talk at Agile Breakfast Luzern on Steering agile architecture. Here is the abstract:

"Emerge your architecture" goes the agile mantra. That’s great. Developers get empowered and fluffy papers make room for real code structure. But, how do you ensure the cohesiveness of the result?

Testing, pair programming and code reviewing are the proposed means to approach this problem. However, testing is only concerned with the functional side of a system, and thus, it is not able to capture structural contracts. Pair programming and reviewing work well in the small, but they do not scale when you need to handle the millions of details entailed in modern systems.

The architecture of the system is important and it deserves special attention because it is too easy for it to go wrong in the long run. In this talk we sketch a method of approaching this challenge on a daily basis by:

  • making architectural concerns explicit,
  • crafting automated checkers,
  • agreeing on findings, and
  • distilling corrective actions.

Why daily? Because architectural integrity is about the most important long term technical asset you have.

This process requires a new kind of infrastructure and associated skills that enable you to craft checkers fast and cheaply. However, this is a technical detail. The critical benefit comes from making architectural decisions explicit, and from the daily actions of cleaning the state of the system.

This talk is targeted to both engineers and managers. We cover the basics of the process, and we accompany the conceptual descriptions with real life examples.

Posted by Tudor Girba at 1 July 2015, 1:12 pm with tags presentation, assessment comment link

Video of my talk at NDC Oslo 2015 on "Don't demo facts. Demo stories!"

The talk I gave at NDC Oslo 2015 on Don’t demo facts. Demo stories! is now available online.

Posted by Tudor Girba at 24 June 2015, 11:28 pm with tags innovation, presentation, storytelling, demo comment link

Slides for my talk at NDC Oslo 2015 on "Don't demo facts. Demo stories!"

The slides for my talk on Don’t demo facts. Demo stories! are now available on slideshare.net.

Posted by Tudor Girba at 21 June 2015, 8:28 pm with tags presentation comment link

Presentation matters

Let me tell you two stories.

Our children are born abroad. As foreigners, we had to get through extra formalities to obtain their first residence permits.

This process required us to first obtain the Romanian passport. With our first born, producing the Romanian passport was delayed for various reasons, and at some point the Swiss authorities sent us a warning letter. So, we went to the alien police and explained that we encountered delays in the process. They told us that we should provide them with some proof to confirm that indeed the Romanian formalities are so lengthy.

We went back to the consulate to proceed with the passport formalities. There, we were told that there were so many enquiries that we need to wait for 3 months just to be scheduled for the official photo shots. There was not much we could do about that, but at least we wanted a little piece of paper saying that it takes so long:

Me: "Could you please provide us with a piece of paper stating how long the formalities take?" Lady: "No, we cannot do that."
Me: "Why not?"
Lady: "Because we are not allowed to sign papers like that."

At this point, we were a bit stuck. Then I had an idea:

Me: "Ok. Then could you please write me a little reminder on a piece of paper with the date on which we are scheduled for the photo?"
Lady: "Oh, sure."
Me: "Now, just so that I do not forget, could you also say next to the date what the purpose is?"
Lady: "With pleasure."
Me: "And now, could you also put a stamp on it?"
Lady: "Stamp?"
Me: "Yes, I see that you have this stamp next to you. Could you just put it on the paper?"
Lady: "Hmm ... Ok."

And we got our official proof that we could send to the Swiss authorities. When I phrased the original request, it appeared unacceptable, although I still do not understand why. But, when I presented the same problem from a different angle and split it in little steps, it was perceived much differently.

You might say that this behavior can be found only in bureaucratic environments. Let me tell you the second story.

Last year, I passed by Gelateria di Berna, our favorite Bernese ice cream shop. I stopped by to get some takeaway.

As I was standing in line, I realized that I only have 10 CHF. The problem was they only have takeaway packages of 14 HCF and 18 CHF. Other than these, they serve regular portions to eat on the spot for 3 CHF and 5 CHF.

I got to the counter: Me: "Look, I only have 10 CHF, but I really would want to get some ice cream for takeaway. Would it be possible to fill only half of the 14 CHF box and I pay for it 10 CHF?"
Seller: "No! We only serve the standard packages. But, you can buy two small portions that you can eat here."
Me: "Hmm, but I cannot really transport these home."

Stuck again.

Me: "Then, could I buy just an empty box?"
Seller: "What do you mean?"
Me: "Just the empty box. I give you 2 CHF for it. I am sure it is not worth more than that." Seller: "Ok, I could do that."
Me: "Then could you put in there a 5 CHF portion and a 3 CHF portion?"
Seller: "Ok."

He did it, and I had my ice cream to take home. The objective problem did not change a bit. The only thing that changed was the presentation.

These are not trivial examples as they relate to the main business of the characters involved. These people were dedicated to what they were doing and they wanted to do the right thing. We can argue that the focus was wrong, but still, they were not guided by ill-will. And, these are not examples of stupidity either. These are examples documenting that the stories we tell ourselves have a critical influence on the way we perceive and act in the world.

Presentation matters. It’s up to us to see both the power and the responsibility that comes with it.

Posted by Tudor Girba at 16 June 2015, 11:16 pm with tags presentation comment link
<< 1 2 3 4 5 6 7 8 9 10 >>