Category Archives: Software – the art

It’s a pity if someone makes only a couple of blog posts in a year. This time it has been more than a year for me and no blogging. Reading has taken over all contribution instincts. Coming out of that mould needs something as powerful as this blog post from Jesse.

With that premises, you would expect some Scrum bashing in this post. If you do, I would not disappoint.

I have myself been a Scrum guide for a development group of reasonable size. It started very well with very good intentions. And people including myself have spent years in making sure it clicks. But if I look back at the years we have been doing Scrum, am I satisfied, or even content about the usage of Scrum? May be not very much.

There are many reasons why Scrum doesn’t work. Or doesn’t work as good as it should. When you see from the Indian context, you discover many more reasons why it becomes chaotic.

In my View Following are only few of the reasons:

Managers

Agile or Scrum focus on teams, and do not prescribe a lot for managers. In an organization where top is not light, the Scrum implementation is bound to face additional issues. Then you would surely listen someone shouting “Hey, Scrum doesn’t say there is no need of managers”. I think it creates chaos. Top heavy organizations simply cannot get all benefits of Agile practices.

Flexibility

This is the most frustrating of the reasons for me, whenever I came across finding solutions for a Scrum related issue. Most of the people believe that “You adapt”, “You learn and improve”, “Anything working for others will not necessarily work for you” and blah blah. I am not saying all of this is bullshit. But it leaves a lot of room for all kind of people to experiment, many times pathetically with Scrum. Do we need a very strict set of instructions in Scrum to counter this? May be not, but keeping everything completely open definitely doesn’t work.

Certifications

Scrum Alliance isn’t bad. There are very good people associated with that organization. Why I took the name of SA very first? Just because in my view they are most popular today in business of selling stupidly easy certifications on Scrum. They provide “Certified Scrum Master” or CSM. You also have Scrum.org who provide PSM certification. Then there is more: “International Scrum Institute” who are ready to give away their coveted “Scrum master accredited certification”. Today I believe most of this stuff is money making gimmick. My experience is that these programs are more focused on making money, not on making a certification program where only good people are able to get passing marks.

Jugaad

I attended a Pete Demer session years back. He told Indian people have somehting not found anywhere else. It is called JUGAAD. I am not going to provide any further explanation of it here, as I think it’s more of an insult than recognition. This Jugaad has indeed given rise to many problems. One of those problems is resistance for orderliness. Due to our pro-jugaad mindset, we in India tend to seek for “exceptions” in everything. For example, if we find it very difficult to get work done in some government office, we seek if it is possible to grease palms of some Babu to get work done quickly. Scrum also suffers due to this mindset. We tend to seek exceptions in every necessary ingredient of Scrum.

Many other things are coming to my mind right now. I remember Jesse delivering a talk in Agile NCR a few years back, where he beautifully explained how Agile, Scrum, Kanban, Lean etc are typecasted and why all of them are processes, not “tools” or “methods” or “practices”. I wanted to see that ppt today, but unfortunately couldn’t find on web. When I was attending that talk, I was thinking how a “Certified Scrum Coach” can say such things. It needs courage and Jesse had that, at that moment.

What I have mentioned today is not all I wanted to say. There is more. Rest for some other time, on the same topic.

Having participated in the lastedition, I am eagerly awaiting this year’s conference. The announcement suggests it will be held in Feb’11.
This year organizers seem to have tightened their belt to make it the biggest Agile affair in India. Having partcicipated in some Agile conferences across India, I can surely say they have been able to attract the largest audience and some very good speakers.
They have launched their brand new website and are also active on Facebook, Twitter.
On adopting good promotion strategy this time, I would say Better late than never 🙂

Many times, when teams are just starting their journey towards agile, this can be an option; but remember, Agile is all about empowered and hyper productive teams. And then, we believe in creating “hero teams” rather than a very strong (read nasty) “hero” product owner who always interferes in the execution.

If he is there always, whats the fun for the teams? How do they raise their bar in each sprint? How do they learn from their mistakes?

That being said, the product owner has to be there when team feels they need him.

2. Is it a business oriented or a technical role?

Product owners do their job best if they are business people.

Turning your best technical guys into product owners has several flaws:

You lose one of the best guys who could have done a great job in project execution.

You make the Product owner’s role the “position to be in” for the best technical guys. Why would you like to do that? You lose the best executors when you do that.

Let’s face it: Knowing how to do programming is very different than knowing what the customer really wants from the product.

3. Can the same guy play the role of Product Owner and Scrum Master at the same time?

Answer this first: Can the same person be your mother as well as father? Emotionally Yes for many of us, but not practically (I am definitely not taking any so called “latest research on human reproduction” into account 🙂 ).

The Product Owner

Product owner is the father for the scrum team: They always want to push their children to the limits. They always want more from their children (and the team should know that. Never allow the product owner to influence your estimates.).

On the other side, Scrum Master is the mother for the scrum teams. They protect their children from the bad guys (product owners, project managers, …). They are the safety net of the team. They know what the team can do, and tell the stakeholders about their limitations and capabilities.

4. Should the product owner show his displeasure if demo scope/quality is not as per his expectations?

Hell Yes.

As a product Owner, make sure you do not fall into the trap of being too nice to the team. If they did a lousy job, they should know about it.

It is as simple as this: If they do not get proper feedback, they can’t improve in the next demo. But yes: it takes some maturity to communicate displeasure to the team in a proper manner.

Day 2 started with a presentation on “Cultural Issues Faced while Adopting Agile”. It was a nice case presentation that demonstrated how the transition from waterfall to Agile happened for a product. Discussion on “issues” was there , but “culture” part was not present. We did not come to know how the culture was an obstacle for that specific Agile implementation.

Now was the time again when I had to choose among the sessions. Choice this time was “Writing user Stories Effectively”, because of the challenges our group faces in this area back in the office. The speaker explained basic concepts for the stories like INVEST and the idea behind them. A good discussion for the starters.

The next presentation was history of sorts. In Hedwig’s words, “the hell good of a presentation”. How does this man, Ajay Danait, gets time to read so much useful software engineering literature? His great presentation (read convincing; he convinced us that if Einstein had brain of 100 people, we can create an Einstein by having a Group of 100, the only thing needed is proper mentor ship) skills were icing on the cake. It was an eye opener for the people who think only following the Agile practices is the key to success. What is needed is much more than that! “Extrinsic vs Intrinsic motivation” was interesting in the sense that we all know these terms, but need a presentation like this to realize actual benefits of being truly self motivated. “Shu-Ha-Ri” pattern was again beautifully presented, after Serge told about it on the first day.You may have a look at this presentation here.

“How to go Agile in distributed environment” was the next one by Imran and Himanshu. The part appreciated most was the tools of choice when working in a distributed environment. I made note of a few tools, and am looking forward to trying them.

Balloooons at the XP Game

Now let’s have some fun, I thought when the schedule hinted I can now go to the “XP Game” organized in another hall. Here 2 teams were formed and we were presented with the backlog. The presenters played role of POs for the teams. There were some useful day-to-day best practices to learn from this session. The key of them all was communication: within the team members and with your PO. It was fun doing activities like inflating balloons and folding paper hats.

Last but not the least, the lady hosting the main hall was a good host. We witnessed her thoughtfulness when she commented about the apprehensions in pair programming. Very true from a developer’s perspective in a development team.

Thus folded a very useful and satisfactory event. To me, the content and experience were exceeding the expectations.

I like waking up late on a Sunday morning and learning that I just broke my last record of waking up late by a few more minutes! This adventure was waiting to be repeated this weekend too, but some Agile enthusiasts here in NCR had some other ideas.

I came to know about the “Agile NCR 2010” conference a few days ago only, and succumbed to the idea of learning something new in my new area of interest: Agile and Scrum.

The event was organized at Ansal Institute of Technology, Gurgaon. Traveling from Noida all the way to Gurgaon is not among easiest of the things to do in this part of the country; but hey, I am now a veteran in that area, having a few years of experience achieving this glorious feat everyday.

The sessions were being run in 3 parallel streams in 3 halls on the floor. The themes were “Agile Adoption and Challenges”, “Agile for Newbies and Post Agile” and “Workshops and Open Space”.

Hedwig and Serge

It was nice to listen to Serge from Xebia at the outset. He set the tempo of the event with his energetic and motivating words. Following him, Hedwig from Ericsson presented “11 ways to screw up agile”. It was a great presentation, which pin-pointed almost all the problems one could face in Agile journey. I could feel his pain when he talked about the difference in site agility while transferring the projects from a site to the other.

After tea it was time to make a choice among 3 sessions . “BDD and UADD”? huh, what does it mean buddy? I asked my fellow agilist. We started making our wild guesses. Some of the guesses were quite interesting, but too naughty to qualify for a mention here :). So, I was there in this session that actually had some areas very interesting and new to me. By the way, the acronyms expanded to “Behavior Driven Development” and “User Acceptance Driven Development”. I regret having skipped “Agile team smells” presented by Anurag from Xebia. I was told he is a very good speaker, but I failed to resist myself from knowing what BDD and UADD expand to. Never mind, I can compensate this loss using rest of the day wisely, I told myself.

Next discussion was taken by Serge, so I had to attend it. He explained how to slice and in-scope the user stories so that the maximum business value is targeted in each sprint. A nice hands-on experience further helped grasping the concept. For this, I had to sacrifice the parallel running Sriram’s session on “antipatterns”, which I later learned was tried to be hacked by some participants. Sriram is a nice and prolific chap, very good at explaining and executing the XP concepts. The team in my office, including me, was impressed by his training on TDD and re-factoring which we attended a few weeks back.

Lunch time, and lo: the cafeteria was swamped by the participants. I somehow succeeded in breaking into the middle of the queue. We should (and most of us do) appreciate this flexibility of human queues compared to software queues.

The most interesting session of the day, I thought, glancing at the agenda for the next presentation “What made Paul a great product owner”. The speaker was an Agile coach, who explained the responsibilities of a PO by examples. I could not subscribe to a few points in his presentation, but an effective presentation otherwise.

Next session was on distributed Agile, arranged over skype. Low bandwidth forced the organizers to switch from skype to a mobile phone. To me, it was the best exhibition of pathetic state of bandwidth services in our country and ever decreasing mobile phone tariffs at the same time.

Next topic, “Agile in Indian context” was interesting to me, because I had prepared a presentation for this event on the same topic but missed the submission deadline by a few days. It was an open house for all. It was further interesting to see some participants feel offended and countering with full thrust when commented about “Indian Culture”.

Update(2010-07-28): Siddharta, the host, did really good work by compiling the mind map of this discussion here.

Does the Indian culture provide the best conditions for Agile implementation? I have a really nice incident to relate with this: I had a workshop in Sweden a few days ago, where the group of people consisted of Indian and Swedish background. Both the groups were asked to brainstorm and come up with 5 top values of their culture/society. Not surprisingly, Indian group came up with values like “Respect”, “Family”, “Job security”, but the Swedish group declared “Health”, “Freedom” and “Professionalism” the most important ones. No prize to guess which of these groups would be “GoodAgile”.

Update (2010-07-29): This blog presents a very relevant and candid account from one of the active Agilist. I just hope that he did not write this blog entry after having 3 beers 😉 .