>

Tuesday, August 11, 2015

Scrum Master - Part Time or Full Time? - Answered!

According to my friend Jeff Sutherland, co-creator of Scrum, Scrum Master is a full time role and here is what he stated in his Scrum Handbook - 

Since Scrum makes visible many impediments and threats to the team’s and Product Owner’s effectiveness, it is important to have an engaged ScrumMaster working energetically to help resolve those issues... Scrum teams should have a dedicated full-time ScrumMaster, although a smaller team might have a team member play this role

Did you get his point? Read this again and focus on the highlighted text above. 

It is a full time role and job both, probably easy to digest for large teams but most would disagree that this is a full time role for an average size scrum team. Going by Jeff's statement above - in a smaller team (6-8 members) a team member may be playing the role of scrum master. Mind it, even in this case, it is a full time role as this member might be involved in coding-testing activities but he would still be spending good time doing servant leader activities as well - like removing impediments, continuous improvement, ensuring scrum is followed, and so on. In a larger team this role gets to spend more time doing all of that and lot more. 

In my experience I have seen a good mix of the following -

- scrum masters supporting more than one scrum teams - team or project compromised? Most likely yes!
- scrum masters involved in tasks not related to scrum or scrum team - compromised? Yes

So think again if you or any of your teams practice part-time scrum master role. 

Tuesday, June 23, 2015

CSM v/s PSM v/s ACP - explained! - updated on 23rd June 2015

Let's understand few of the leading Agile certifications - CSM (Certified Scrum Master), PSM (Professional Scrum Master), ACP (Agile Ceritified Professional), ICP-APM (ICAgile Certified Professional in Agile Project Management) - in three easy steps -

1) CSM is from www.scrumalliance.org, PSM from www.scrum.org, and ACP is from www.PMI.org (yes, same organization that offers popular PMP certification), ICP is from another independent organization ICAgile (https://icagile.com)

2) CSM can be equated with PSM (Level1) but none of these two can be equated with ACP - first two are Agile Scrum specific certifications, where as ACP and ICP are more extensive and focus on Agile as whole.

3) CSM - get mandatory training (paid) from www.scrumalliance.org and take exam (free) on their website and you are done (I don't know anyone who has ever failed this exam - so kool!), PSM is slightly difficult, no mandatory trainings - pay exam fee online at www.scrum.org and take exam. As you would know from my earlier point, ACP is the most difficult one to earn. You can learn more about ACP at www.pmi.org, to earn ICP you need to attend a mandatory two day training, no exams though, certification is at discretion of trainer (anyone ever denied a certification thus far?).

Final verdict - as an expert myself, i suggest to go for PMI ACP if you really want a certification that industry cares about. A certification doesn't guarantee you a job or any other award, but it surely is a distinction that stands you apart in this crowded professional world. Good luck!

Sunday, March 2, 2014

Impediment v/s Bug - are they same or different?

Let's understand what is impediment and bug in Agile Scrum. First of all they both are not same, they may be distantly related in some special situations but they are different.

Here are the basic definitions:
An impediment is a situation that is stopping/blocking the completion of work.
A bug is referred to a defect or issue in the work product.
On side notes do you know that the word "bug" was used to indicate an actual bug (fly, moth) on a circuit board causing a short-circuit or other problems. You can read more details here - http://theinstitute.ieee.org/technology-focus/technology-history/did-you-know-edison-coined-the-term-bug

A defect would typically NOT block the completion of work, though in some situations a defect may impede work and also be am impediment at same time. For same reason, a defect would relate to implementation of a work item (user story), where as impediment would block one or more work items (user stories).

Defect and impediments are tracked seperately in defect tracker and impediment tracker. Bugs would eventually be prioritized and added to product backlog and re-prioritized by product owner. Impediments would never be added to product backlog, but resolution of an impediment may be taken out as spike; if some research work is involved and/or a major bloker to work.

While bugs can be identified during development activities (coding, testing etc), and impediment would typically be identified during daily scrums. The scrum master is responsible for helping resolve these impediments to improve team productivity.

Saturday, March 1, 2014

BRD, Requirements Document in Agile Scrum?

While comprehensive documentation is valuable, a working software is MORE valuable as per the Agile Manifesto. One of the myth about Agile Scrum is that it promotes no documentation. The fact is that documentation is certainly not a bad thing, but Agile suggests to create minimum required documentation.

So the question is where do you keep user requirements - trying to find something similar to BRD (Business Requirements Document) in Agile?

The answer is rather simple - "product backlog"! Product backlog is only place to capture all the user requirements and as we know these requirements are prioritized by product owner for each release, sprint and is called release backlog and sprint backlog respectively.

Pic: 1) Product Backlog, 2) Release Backlog, 3) Sprint Backlog

You may also want to check this post to learn more about difference between terms Release, Sprint.

Friday, February 28, 2014

Sprint velocity basis yesterday's weather - Agile (XP)

Ok, before we understand what is 'Yesterday's weather' in Agile, let me tell you that Yesterday's weather is not an agile scrum term but an extreme programming term. Some of Agile terms are used interchangably now a days, and this is one of the methods to estimate sprint velocity for upcoming sprint, so thought to cover this term.

Lets take this example -
if it has been raining yesterday in Delhi, then it's quite likely that it would rain today as well. It may not be 100% accurate forecast but still good enough to suggest someone carry an ambrella today.

In Agile, 'yesterday's weather' refers to last sprint's velocity. Development team may have been working at varying velocity in past sprints (20, 18, 25, 28) so one of the ways to estimate how many story points development team can deliver in next sprint is to check last sprint's velocity - this may not be the best way but can be called a best guess, or bet. So in this case, 28 story points would be the answer.

You may also find these related posts valuable in Sprint Planning section.