Showing posts with label scrum. Show all posts
Showing posts with label scrum. Show all posts

Friday, October 20, 2017

What makes an Agile Leader?

“What makes an Agile leader?” is the most frequently asked question in my leadership workshops. Although there is lots of research and data available on leadership, there is no clear information on what makes an Agile leader.

Based on my experience with leadership coaching, I would like to explain what is expected from an Agile leader. Before getting into the specifics, let’s go through what being a leader is all about.

Jack Welch of GE defined a leader as an individual who “ … is considered to be someone with vision and [the] ability to articulate that vision to the team so vividly and powerfully that it becomes their vision.”

Why leaders are so important in any organization?

I don’t want to belabor the importance of leaders; instead, I’ll use the quotes below to summarize it nicely.




As the land so the [ground] water, as the seed so the sprout.
As the region [country] so the language, as the king so the people. — Sanskrit proverb


“People are often led to causes and often become committed to great ideas through persons who personify those ideas. They have to find the embodiment of the idea in flesh and blood in order to commit themselves to it.” — Martin Luther King, Jr.

The leadership role creates the organizational culture

I watched Ahmed Sidky’s YouTube videos, in one of which he explains the organizational ecosystem and organizational culture, which are formed from five elements:
  1. Leadership (style, values, and habits)
  2. Strategy (goals, measures of success, and rewards)
  3. Structure (roles and responsibilities, decision, and organization)
  4. Process (value chain, policies, operations, and business processes)
  5. People (values, beliefs, attitudes, norms, and habits)
Leadership makes most of their decisions related to strategy, structure, process, and people. Thus, leaders play a key role in impacting the organizational culture.



The leader’s role in the Agile transformation

Leaders play a key role in the success of the organizational Agile transformation. Here’s an outline of what is expected from Agile leaders during an Agile transformation, broken down into the three main phases of that transformation.

Before the Agile transformation

  • Leaders must be clear about answering the question, “Why is my organization moving to the Agile way of working?” They must ensure that they convey the objectives/purpose of the Agile transformation all the way through to the last employee, while maintaining its meaning.
  • Change the organizational structure, if it is not going to support your Agile transformation strategy. For example, form feature teams from component teams. Identify infrastructure requirements and set them up.
  • Do a skill mapping within your teams and check whether you have the end-to-end skills required to fulfill the work requests (e.g., it could be new product development whereby your journey is from product backlog item to product increment, or it could be a service request that adds value to the customer). Hire team members if any specific roles are required for the Agile transformation.
  • Do a readiness assessment for the teams to know whether they are ready for the change or whether there are any changes necessary to get them ready. Leaders can seek the help of Agile coaches here. One simple but important question to ask: “Are we ready for change?”
  • Communication is key. Communicate the details of the Agile transformation with all the team members. Have conversations with teams, understand their hopes and fears, and create a psychologically safe environment. Communicate for success.

During the Agile transformation

  • Collaborate with the Agile coach and transformation team, and share your expectations and observations. Provide all the support required to the teams, individuals, and Agile coaches to make them self-organized and empowered.
  • Believe in the Agile Manifesto (Agile values and principles). Start practicing it. Be a role model for teams by practicing what you preach. Exhibit behaviors that are expected from your teams or from individuals who report to you.
  • Encourage teams to fail fast. Reward or celebrate failures.
  • Train teams and leaders on Agile (based on your organization’s strategy) and in other skills required in teams. Trainings or workshops help teams gain more knowledge and start working in an Agile way.

   

Friday, January 10, 2014

Scrum

In Previous post, we have discussed about Agile Overview: what is agile, agile manifesto, agile principles and classification of agile methodologies into Light weight approaches and fuller approaches.

Light weight approaches: Scrum, Lean, Kanban, Crystal and Extreme programming (XP)
Fuller Approaches: DSDM (Dynamic systems development method), AUP (Agile unified process) and FDD (Feature driven development)

Let’s discuss about one of the Light weight approaches in this post. Let’s get started with Scrum. Before getting started with scrum just wanted to know whether you believe in statement “None of us is as strong as all of us”. Please continue reading if your answer is ‘YES’ else, read this post twice to realize what wonders can be done if you work in a team.

What is Scrum?

Scrum has become terrifically popular over the past few years due to its simplicity, productivity and broad applicability

First definition of Scrum: Scrum was first defined as "a flexible, holistic product development strategy where a development team works as a unit to reach a common goal" as opposed to a "traditional, sequential approach" in 1986 by Hirotaka Takeuchi and Ikujiro Nonaka in the "New New Product Development Game"

According to the Scrum Alliance, “Scrum is an agile framework for completing complex projects. Scrum originally was formalized for software development projects, but works well for any complex, innovative scope of work. The possibilities are endless. The Scrum framework is deceptively simple

Scrum is a better way of working for teams to work together to develop a product. Product gets developed in small pieces (Called as Product increment in Scrum) and it is delivered as integration to the main product. As team is working on small piece of the product, it gives scope to be more focused (to build exactly and only what is needed), creative and enables better change management

To be more simple and specific, “Scrum is a framework for effective team & customer collaboration to deal with complex projects. It is originally designed for software development work but it can be used to any work if you feel appropriate

Scrum values

The Agile Manifesto values apply directly to Scrum

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

All activities performed in scrum are based on above agile manifesto and scrum values. Team needs to practice these to achieve effective team work and continuous improvement. The scrum values are Commitment, Courage, Focus, Openness and Respect


Scrum Framework

Scrum framework consist Scrum roles, Scrum Ceremonies/Activities, Scrum Artifacts and Scrum Rules.

Scrum Roles: Scrum Team includes 3 roles

Scrum Master (SM)
Product Owner (PO)
The members of the Development team (DT)

Scrum Ceremonies: 5 activities in the process of scrum which facilitates planning, execution, inspection and adaptation

Product backlog refinement meeting
Sprint Planning Meeting
Daily Scrum Meeting
Sprint Review Meeting
Sprint Retrospective Meeting

Scrum Artifacts: Scrum team has 3 artifacts

Product backlog
Sprint Backlog
Product Increment

Scrum Rules

Before discussing scrum framework one by one, let’s take a look at Scrum framework quickie. After getting to know about scrum, I have seen many pictures explaining scrum. But I felt those pictures are not providing full information about scrum and they are meant for people who have prior knowledge of scrum. Thus made below picture based on my scrum understanding


Scrum Framework Quickie:

ü  In Scrum, work is performed in SPRINTs. Sprint is the basic unit of scrum development.  It is “Time-Boxed” effort i.e. restricted to a specific duration. The duration is decided by the team (normally 1week to 1month)
ü  Sprint is protected with respect to team, Goal and Length. SPRINT Starts with planning meeting and ends with Sprint retrospective meeting
ü  Product owner discusses with customer and comes up with list of high-level requirements (Product Backlog)
ü  Product owner explains requirements to the scrum team, High-level requirements are broken in to smaller features by grooming process and these features are prioritized based on business value (Product Backlog Refinement Meeting)
ü  Before starting the sprint, scrum team meets and selects the tasks to work in next sprint and comes up with a list called Sprint Backlog (Sprint Planning Meeting)
ü  Scrum team starts working on the sprint goal. Team meets daily at specific place & time to synchronize team activities (Daily Scrum meeting)
ü  Scrum team meets with customer to show-case/demo the features they developed (Product Increment) and collects customer feedback (Sprint Review Meeting)
ü  Scrum team meets to inspect self and search for improvements on anything and everything related to team (Sprint Retrospective Meeting)
ü  Sprint Closure…Plan for next sprint

Hope you got a fair idea on how scrum works by now. Let’s dive in deep and learn about scrum framework in detail

Scrum Roles

Scrum master:

Scrum master helps the scrum team to work together efficiently towards the sprint goal; Ensures scrum process is followed as intended and educates the team on scrum process (Team Scrum’s expert).

Protects the team from external distractions and removes team impediments if any. The Servant-Leader (Servant first, Leads the team next)

Ideally this should not be played by line manager. But if a line manager can honestly play scrum master’s role by keeping everything aside, then why not? (Just think about it)

Facilitates all activities in scrum, Helps team to focus on identifying a meaningful functionality that can be achieved in the sprint in the order of product backlog priority

Product Owner:

Product owner is the voice of the customer and represents stakeholders. Accountable for ensuring that team delivers value to the business by product backlog management (prioritizing product backlog before each sprint, adding new things to the product backlog, refines product backlog and communicates customer requirements to the team)

Defines product features; Responsible for Project management, Product management and Product marketing. PO acts as a bridge between Customer and the scrum team and is at least 50% available to the scrum team

Responsible for ROI (Return on Investment), optimizes the business value of the work done by scrum team. PO is responsible for project schedule, project cost tracking & Estimation, change management

Explains customer requirements to the team and clarifies their doubts if any. PO accepts or rejects the sprint deliverables based on the defined acceptance criteria. PO needs to accept the product increment before it reaches the customer

PO in release planning: Creates project management plan, Responsible for determining the release dates by tracking team’s performance matrices.

The Members of the Development Team:

Team which turns the product backlog into product increment (Potentially shippable product); Cross functional team who do the actual product development. Involves different roles i.e. Business analyst, UX Expert, Programmer, Database administrator, Release Engineer, Technical Architect, Tester, Technical Writer, User Interface Specialist, Quality Assurance, Developer and any other role required for delivering product increment

Autonomous and self-organizing team, Size is ideally considered as 7±2, who works full time

Selects the refined requirements to deliver in Sprint, divides the selected stories into tasks, Estimates work and decide how many stories will be delivered by end of sprint and finally commits to Sprint goal

Creates work breakdown structure, Determine how team accomplishes work

Demonstrates product increment to the customers in sprint review meeting and releases to the customers

Scrum Ceremonies

Product backlog refinement meeting:

It is an ongoing process for reviewing product backlog items (PBIs), main objective of this meeting is to keep backlog ready for next 2 sprints by creating, refining, estimating and prioritizing PBIs. Duration and frequency of the meeting is decided by the scrum team.

Product backlog consists of User Stories (Something which user wants), Epics (Big User story) and Themes (Bigger User story)

Large PBIs gets broken down in to smaller user stories which makes them clear and executable for teams once they pick these for sprint execution

Enrich PBIs with new details and Re-Prioritize PBIs based on the business scope

Sprint Planning Meeting:

Meeting is held at beginning of the sprint cycle to select refined PBIs to be done for the sprint.

Meeting duration is 8 hours for 30 days sprint
Attendees for this meeting: DT, SM and PO

It is maximum 8 Hours for 30days sprint. First 4 hours are spent on team discussion for prioritizing the product backlog. Next 4 hours are spent on DT making a plan for the sprint

It results in Sprint Backlog (List of PBIs selected to be done in the sprint)

Daily Scrum Meeting:

Daily scrum meeting occurs each day during the sprint. DT meets @ specific time & place to synchronize activities in the team.
Meeting duration is time-boxed up to 15 minutes
Attendees for this meeting: DT, Optional (SM, PO)

It has certain guidelines mentioned below
DT needs to come prepared with updates
Starts by specific time even if some team member is missing
DT tells about three things
What have you done from yesterday’s daily scrum today’s daily scrum?
What are you planning to do from today’s daily scrum to tomorrow’s daily scrum?
Are there any impediments blocking your work progress?
Scrum master makes a note of impediments and works towards resolving it outside the meeting. No detailed discussions happens in this meeting

Sprint Review Meeting:

Sprint review meeting is held at the end of a sprint cycle. Scrum team reviews the work completed and the planned work which is not completed.

Scrum team demos completed work (Product increment/Potentially shippable product) to internal and external stakeholders. Stakeholders review the product increment and provide feedback to the scrum team

Duration: Max 4 Hours for 30 days sprint
Attendees for this meeting would be SM, PO, DT and Stakeholders

Product owner makes a note of the stakeholder’s feedback and adds/changes PBIs based on the same

Sprint Retrospective Meeting:

Sprint retrospective meeting is held at the end of a sprint cycle. This meeting is for team to inspect itself and search for improvements
Duration: Max 3 Hours for 30 days sprint
Attendees for this meeting would be SM, DT and PO

Team gathers data of what worked well and what needs improvement in the past sprint with regard to product, process and what not, everything related to scrum team

Scrum master asks questions to the team and generate insights based on the data provided by the team

Team creates a list of Action items and prioritizes the action items based on team voting agreement

Request volunteer owner for action items and volunteers will be responsible for that action item once it is assigned

Scrum Artifacts

After going through scrum ceremonies, you might have got an idea of scrum artifacts as well. Let’s see them in detail

Product backlog:

List of product requirements in a prioritized order, priority of product backlog items is done by product owner based on business value, risk and dependencies etc

Product backlog consists of features, Bug fixes, non functional requirements, anything and everything required to fulfill product vision

Product backlog is open and any one can change it but product is responsible for prioritizing them based on discussions with customer

Usually, PBIs are in user story format
As a <WHO|ROLE>
I want <WHAT|FEATURE>
So that <WHY|PURPOSE>

Each PBI contains business value, DT effort estimation i.e. estimations are given as story points as unit. Story points should be from Fibonacci sequence. These estimations will help PO in release planning

Estimations given by DT team should be either story points or estimated hours of effort to complete the task

Sprint Backlog:

Sprint backlog is a list of product backlog items selected for the next sprint & associated tasks and this has been derived from top list items of product backlog

DT selects PBIs based on the past sprint velocity if available or else dive and swim if it is first sprint of a new project

PBIs are broken down in to tasks by the DT. DT team members chooses the tasks based on their skill set which is a part of self-organization of the DT

These are written on sticky notes and pasted on a board under categories “To do”, “In Progress” and “Done”

No additional items can be added to sprint backlog once it is committed. Only DT is allowed to make changes for sprint backlog if needed

Once Sprint goal is achieved, scrum team analyses product backlog and go for next set of items for next sprint

Product Increment:

Product increment is nothing but potentially shippable product completed during the sprint. At the end of the sprint product increment needs to fulfill “Definition of DONE” criteria (also called as EXIT criteria).

According to scrum.org, “Definition of Done” is a shared understanding of what it means for work to be complete, to ensure transparency

Definition of done is defined by scrum team. If product increment needs to be deployed to the user, then it should complete all the criteria pre-defined by the team

Example of Definition of DONE criteria: Analyzed, Designed, Implemented, Reviewed, Tested, Packaged, Automated, Deployed, Integrated, Accepted by PO, No known BUGS and Got feedback from Customer

Once the product increment is passed through EXIT criteria, it should be in usable condition irrespective of whether PO is releasing it or not

Scrum Rules

Whatever we have been discussing in this post, all are scrum rules. Officially, the Scrum Guide is the Scrum rulebook maintained by Scrum.org, Ken Schwaber, and Jeff Sutherland. Please download your copy here and go through it

Apart from Scrum roles, Scrum ceremonies and Scrum artifacts in Scrum framework, you need to know some commonly used scrum terminology.

Sprint Burn-down chart: Sprint Burn-down chart is a graphical representation to track sprint progress.  Shows remaining work in the sprint backlog.  Number of days in the sprint is taken on X-axis and Number of hours OR Number of story points is taken on Y-axis to plot the graph. Sample graph is given below

Release Burn-down chart: Release Burn-down chart is a graphical representation to track release progress. It shows the amount of work left to complete to reach release target. Number of sprints is taken on the X-axis and On Y-axis, it is up to the team to decide. It can be Story points, Team days or ideal days.

Scrum task board: Team members lists the tasks of the sprint under the categories “To do”, “In Progress”, “Done” in a big board which is called as scrum task board and updates the tasks on daily basis. Ideally before attending the daily scrum meeting

Team Velocity: The number of story points (Product backlog effort) completed in one sprint is considered as team velocity

Abnormal Termination: When product owner realizes that it makes no sense or business value to continue sprint, PO can cancel the sprint at any point of sprint duration is called abnormal termination. Inputs for this process can be given by SM, DT or management

Spike: SPIKE is a technical investigation or collecting more information with respect to one task. It can have maximum time box size of one sprint. For more information on spikes click here

ScrumBut: It is an exception to the pure scrum methodology. Scrum framework which has been changed based on the needs is called ScrumBut

Technical Debt: (also known as Design Debt or Code Debt). The debt is a particular task that needs to be done before it is considered as complete in codebase. If it is not repaid (Fixed) in the early stage, it accumulates eventually making it hard implement later on

With this we have completed scrum framework. Let us look at advanced scrum concepts in posts after completing agile methodologies. Thank you for stopping by and reading my blog, it means a lot to me. Help me to improve by giving your feedback. I appreciate it very much! Please feel free to reach out to me


-Balaji Sathram

Wednesday, December 11, 2013

About Me


My name is Balaji Sathram, have completed M.Sc. in Biotechnology & Bioinformatics (2006), and currently working as Test Engineer at Technology Pipeline Solutions (TPS), Monsanto Holdings Pvt Ltd, Bangalore. Job is to ensure quality of scientific software used for breeding & lab activities. Prior to this I have worked in below places

From -- To
Designation
Company
June 2011 to till date
Test Engineer
TPS, Monsanto holdings Pvt Ltd
Mar2011 to May 2011
Senior Research Fellow
Avesthagen Limited
June2008 to Feb2011
Research fellow
Reliance  Pvt Ltd
July2007 to May2008
Junior Research Fellow
Jawaharlal Nehru University
Oct2006 to June2007
Trainee Executive
Mahyco Ltd

Accomplishments:
  • University Second rank in Post-Graduation
Publications:

  • Yeast functional screen to identify genetic determinants capable of conferring abiotic stress tolerance in Jatropha curcas L .Nalini Eswaran, Sriram Parameswaran, Balaji Sathram, Bhagyam Anantharaman, Raja Krishna Kumar, Sudhakar Johnson Tangirala. BMC Biotechnology 2010, 10:23
  • Generation of expressed sequence tag (EST) library from salt stressed roots of Jatropha curcas for the identification of abiotic stress responsive genes. Nalini Eswaran, Sriram Parameswaran, Bhagyam Anantharaman, Raja Krishna Kumar, Balaji Sathram, Sudhakar Johnson Tangirala. Plant Biology , 14 (2012), pp. 428–437
Patents:
  • Identification of genes related to abiotic Stress tolerance in Jatropha curcas. Nalini.E, Sriram.P, Balaji.S, Bhagyam.A, Johnson, T. S. (Application number: 2650/MUM/2008)
  • Nucleic acids of Jatropha curcas and its applications. Nalini.E, Sriram.P, Balaji Sathram, Bhagyam.A, Johnson, T.S.(Application number: 389/MUM/2009)
Surprisingly, Exposure to core Information Technology domain in the past years made me to think about the process and how it benefits in Team Culture (I feel this is the best thing happens with Agile transformation), faster delivery and customer satisfaction if you tweak it in right way. Thus started to explore about process, completed CSM (Certified Scrum Master) as an initial step. Planning for PMI-ACP, CSP in near future

Main objective behind starting this blog is to connect with people who are interested in Agile way & to share information with Agile world.

I will be posting all useful information related to PMI-ACP prep which I come across in my preparation. So, keep watching this blog. All the very best

- Balaji Sathram