Oct 30, 2014

Using Scrum for Strategy Work

I'm continuing with the same subject I wrote about last week. Repetition is key to learning. And another important way to make things stick is to tie new information to previously obtained knowledge. At university I noticed the same thing with equations, groups of equations, matrices and linear operators (and functionals). Once you study enough maths you see how beautifully many things are connected...


But getting back to the point. I'm participating in our strategy work. Probably going into details about it would be wrong in so many ways that I won't even consider such option. But I think the (Agile) process how we are producing the new strategy is so interesting that I'd like to share it.


One way to produce a new strategy is to assign the task to a couple of persons. Then they spend some time (X months) to gather data and make relevant analyses and present resulting strategy to CEO and/or Board. Then the strategy might be accepted or some modifications are requested. Process is effective, because the people working on it don't need to negotiate much and they can move fast. On the other hand, the result is produced by the mental energy of only a couple of people. And these are also the only people who know the new strategy at the beginning.


In our case the work is split into work streams. Each work stream has an Owner, a Facilitator and a dedicated team. Teams produce their own piece of the general strategy puzzle, but they need to make sure they are aligned with the other work streams. This is achieved via cross-team communications (which is always non-trivial) and facilitated through weekly Facilitator Calls. Teams also have regular sessions when they all meet, present their current findings, challenge each others current results and generally push each other forward. This is also a session that feeds the overall strategy which will be the crystallized result of all the combined efforts.



If you have used Scrum with multiple teams you might spot some similarities. I think the work stream structure is a one-to-one match with a Scrum Team. It contains (Product) Owner, Facilitator (Scrum Master) and a (Development) Team. The Facilitator Calls are like weekly Scrum of Scrums sessions that are used for cross-team synchronization. (Of course this close relationship with Scrum is not that much advertized.)


I can't think of a good Scrum match for the session that combines the results of the different work streams, but there's one in SAFe model. These regular sessions bring to my mind System Demos. All in all the work is like traveling on board an Agile Release Train. The end result will be full-fledged strategy that is already well understood by the people who have been crafting it. And although this probably costs the company a lot more in the short term than a strategy crafted by only a couple of persons, I think it's a clever investment. If we have N work streams with M members, it totals N x M people who are already quite familiar with the new strategy. I think that is already a really nice sized Guiding Coalition.


And maybe still one thing that I want to add (because I'm so proud of it): the strategy process is out there in the open! Not in the basement, nowhere lurking in the darkness. Anyone is free to give input. People are encouraged to discuss and even the meetings are held in open space. Transparency. A cornerstone in Scrum. To me it signals trust.


Oct 22, 2014

Strategy, Vision, Story, Culture

First I need to admit that I'm a total newbie in any strategy work. I can openly admit that most of what I have is just scratching the surface and guesswork. But I'm getting increasingly curious about how to craft a strategy.


Even the best strategy isn't worth a penny if people don't know about it. People need to hear about the strategy. They need to be able to discuss it and ask questions. Possibly even help in crafting the strategy. I believe that's not always possible and maybe everyone doesn't even care too much about such things, but it's easier to embrace something you have been involved with early on. (I believe same things apply for leading change also. And well, strategy is about changing the company from one stage to another.) Communication becomes critical when executing the strategy.


I have recently learned that I've confused crafting a strategy and crafting a vision in my mind. I mean, if we start making a new strategy, first we should have a goal. Ambitious and challenging, yet reachable with some stretching. Or even unreachable. I was again happy to watch a video about Spotify. The second part of Spotify culture introduced the Definition of Awesome. I think company Vision should be something similar. What you aim to be in the future, the ultimate goal.


And then Strategy would be 'just' those steps that take us towards that goal. There might be big and scary actions that will need to see the daylight, but more or less this is how I see it. Now I'm facing some doubts. Spotify is emphasizing the importance of culture. Almost all companies have values. The recent presentation by Eric Schmidt from Google seems to point to the direction of culture plus right people and even directly saying that having a strategy is stupid. In today's fast moving world the strategy might be out of date quite soon after it has been crafted. Old truths don't hold anymore.

Experience is less important than skills, enthusiasm and willingness to learn. Months and weeks have turned into seconds and you can be either a dinosaur or a small and agile mammal. Those who don't adapt will become fossils and relics of the past.


But maybe strategy can also be to create an kick-ass culture while pursuing that vision. If you aim to be the best damn player with the most awesome products that customers love, that vision is not going to get out-of-date soon.


Fourth interesting concept related to the same topic is the company Story. I read about this from Ville Tolvanen's blog (who unfortunately blogs in Finnish). I like this approach of having a Story. Stories are easy to remember and they don't need to be precise. Using metaphors is often a powerful way to get the message through. Maybe the trick is to tell a story about a company that had an awesome culture and was chasing a glorious goal...


Oct 7, 2014

Software QA and Testing SUMMIT 2014

I participated in a Finnish QA and Testing conference. It was actually my first related to this subject. Never the less, I found the presentations to be really interesting. (The conference would actually last two days, but unfortunately I can't attend the second day.)

IT Quality from the Management point of view - Quality Assurance is much more than testing


The first keynote presentation was given by Reni Waegelein and Karri Kolehmainen from Veikkaus. Veikkaus is a Finnish provider of gambling services. The only one of its kind, they have a monopoly. Maybe the main topic was that the business is moving in ever faster pace. Earlier things happened weekly, like the Finnish lottery (Lotto-arvonta) and the main co-operation partner was post office. Now playing and transactions happen almost every second. There are 300 million gaming events per year.

So is it worth investing in quality (assurance)? It depends. One should always consider what we can achieve with the testing and what we could lose if we don't. What and how big are the risks? According to Waegelein it's not necessary to have the site always accessible. But keeping people's transactions secure is a must.

The perceived quality or the impression of it is more important than the actual level of quality. A lot of it is psychology. People usually remember from their experiences three things: the worst thing, the best thing and the end. Essential part is to find the critical situations where the quality needs to experience good quality. For websites it's usually the arrival and departure from the site.


Usually failures make good stories. They told about a time when after the Keno lottery broadcast was already over, one the official administrators found a ball outside the lottery system. In essence that meant that for customers who had played with that number there had been absolutely no change of winning. So they decided to redo the lottery. But because official results had already been announced they couldn't help but give out the winnings for the past lottery. They took a big financial hit and had to make a lot of manual work, but I think it was indeed the best choice all things considered.

Another thing they wanted to clarify was that testing doesn't produce quality. During their last big release efforts before jumping into more agile way of doing things they spent 25 thousand hours on testing a release! And when they wanted to do things differently some people thought this safety net was taken away.

But to be fast, the focus needs to move to an earlier stage. Quality assurance needs to start already during the development and even before. It needs to be part of every project. When testers are involved already at the planning it more easily means that only the necessary parts are implemented. Usually normal Product Owner would specify the product up to 130% and end up adding even more. With the testers are involved in this it's easier to stay focused.

They don't have people separately responsible for test automation. Everyone knows how it works and everyone is responsible for it. The cases are written in Gherkin which is easy to understand even for non-coders.


The Agile Project Model of Veikkaus is a combination of different methodologies. It combines selected practices Lean, Agile, Scrum, Kanban and XP. They were also aware of the Scaled Agile practices and familiar with the things happening at Spotify. Many of the things sounded really familiar. We have been studying and experimenting the same practices.

After the presentation there was a round table around the vision and future trends of testing and QA. One comment was that QA seems to nowadays be almost a synonym for all the other software development activities except testing. People had also noted that in some places people have widened their job descriptions. They aren't anymore test engineers or development engineers but just engineers. Reminds me of Scrum and everyone in the team being a Developer. The importance of (test) automation is increasing.

After a coffee break there were a couple of short presentations by tool providers. I'm not going to advertise those here, except I want to share a couple of cool pictures. Ulf Thornander talked about the tightening pace in development. We are moving from Continuous Integration to Continuous Operations. But I think this is a bit hard to reach for certain types of business, but anyway a good Roadmap for the future.


James Fenton talked about how we should integrate testing into Continuous Delivery. There were a couple of good slides, but I personally liked the one about moving testing to the left best. It's so much cheaper and productive to find the defects when the product hasn't reached production. A no-brainer, but still somewhat hard to do in real life.


How to get Quality Assurance included from the beginning of the Project?

Maija Sanisalo from UPM concentrated on the human part of QA. She told that a good QA person is visible. That's how (s)he gets involved and hears things. Having people with great skills isn't enough. They will need to be able to work together. And the quality assurance needs to be part of people's daily work. As an amusing side note she mentioned how it's important to decide that 'today is going to be a great day' and start your day with a Peter Pan or a Winner pose. It will affect your mood and consequently your whole day. (People might also think you are crazy, but you shouldn't care about such petty details.)




CASE Nokia: HERE Maps for Windows story: How to adopt changes without scarifying quality

The last presentation I had time to enjoy was held by Tatiana Smekhnova from Nokia, Germany. She's the QA Lead of the HERE maps. According to what I heard, Nokia has done some remarkable improvements on the empowerment of people. Or maybe HERE Maps is just so small unit that things are easier to change there.


The quality of the application is the responsibility of everyone. Processed should help in this. They had a challenge with regression testing. It could have taken five days to complete. But when you create software in short sprints, five days is way too long. So they set a challenge to shorten the time to one day.

They seem to really live according to agile values. Team makes decisions together, they review their Definition of Done regularly and they have working Retrospectives. One particular example of team making decisions about their own ways of working was that they decided that meetings should take a maximum of one hour. From the principles Tatiana showed in her slides I found also lot in common with the Management 3.0 principles. Face to face meetings, setting goals together, improving everything. I guess many people have read the same books. Maybe they are indeed good books. At least I personally believe so.

All in all as a conclusion Software QA and Testing SUMMIT was a good investment of my time. In addition I had opportunity to speak with interesting people and find out new things. Actually this left me hungry for next year. :)