Subscribe by Email


Showing posts with label Scrum master. Show all posts
Showing posts with label Scrum master. Show all posts

Saturday, June 9, 2012

What is a Scrum Framework?


Many a times you might have heard, “scrum is a framework rather than a full methodology or process”! Why scrum is said to be a framework and not a process? 
This article explains the scrum framework in detail and answer the above mentioned question to the best of my understanding.

Scrum Overview


- Scrum is an iterative as well as incremental process and has its foundation laid up on the principles of the agile software development. 
- The agile foundation of the scrum helps it to focus up on keeping the code as simple as possible, testing the code quite often and delivering the working releases of the software system or application as soon as possible when they are ready. 
- The goal of the scrum lies in the philosophy of building a small client approved release as the team continues to develop the project rather than delivering one whole large completed software system or application with many undesired aspects at the end of the development process. 

What is a Scrum Framework?


- The scrum frame work is developed with the help of 3 core roles out of which first one is the “development team”. 
- When the scrum process is implemented for the development of a project, the development team is supposed to answer the following three questions:

  1. What they had accomplished since the last scrum?
  2. What they will do before the beginning of the next scrum?
  3. Did they encounter any stumbling blocks or hindrances?
- After the answers to these three questions are obtained, the sprint burn down chart is updated. 
- Next comes the role of the “product owner”, the person who holds the vision for the software project. 
- He/ she hold the responsibility for defining the software product and preparing a product backlog based up on the user requirements. 
- This product backlog is constituted of the user requirements listed in the order of their priority of the business values. 
- The product owner has the authority to accept or reject the work that has been done and change the priority of the features that are to be implemented in a sprint. 
- The scrum master has to supervise all these processes and remove impediments if any. 

Benefits of Scrum Framework


- The scrum framework works well with a team that has abilities like that of self organizing and cross functionality. 
- The frame work allows the development team to do everything to achieve the sprint goals but staying within the boundaries of the scrum principles. 
- For the frame work to be properly implemented it is necessary that the sprint burn down chart should be high with the updates on a regular basis i.e., daily after the sprint review meeting. 
- The scrum frame work demands commitment to the sprint goals and the results are demonstrated to the product owner at the end of every sprint.

There are certain artifacts associated with the scrum framework which have been defined as follows:

  1. Product backlog: Ordered log the user requirements based on the priority level of the business values. Created by product owner.
  2. Sprint backlog: Created by the development team. Log of the tasks that are to be accomplished during the sprints. Obtained from the user stories.
  3. Increment: Sum of all backlog items completed in the current sprint + backlog items completed in the previous sprints.
  4. Sprint burn down chart: This chart provides the project stats.
From all the above discussion it won’t be wrong to conclude that scrum forms a type of “inspect and adapt” frame work.  Scrum is a quite easy to understand consisting off just 4 ceremonies, 3 core roles and 4 artifacts. 


Tuesday, June 5, 2012

What are different processes involved in scrum development?


We have been witnessing the milestones achieved in the field of software engineering with the help of the scrum development process regarding the development of the agile projects. There is no doubt regarding the efficiency of the scrum development process in the terms of agility. 
It supports all the principles as stated by the agile manifesto for all the development methodologies and processes falling under the category of the agile software development processes. 
Initially the scrum approach to development was considered to be a holistic but eventually in by the year of 1995 it achieved its present form and was officially termed as the “SCRUM”. 

Scrum Development Cycle


The scrum methodology consists of various stages and processes that we are going to discuss in this article. The scrum development cycle is constituted of the below mentioned processes:
  1. Creation of the product back log
  2. Creation of the sprint back log
  3. Sprint
  4. Delivery of a shippable working increment of the software system or application.
- The product back log can be thought of as an ordered list of the requirements and specifications of the software product or the system that is to be developed and its creation is the responsibility of the product owner. 
- The product owner orders some product back log items and these items only are mentioned in the product back log.
- The product owner may order these product back log items based on any one of the following criteria:
  1. Risk
  2. Business value
  3. Date needed
  4. Dependencies and so on.

What is Product Back Log?


- The product back log is a list that is open to every one and all are free to edit it but, for any kind of changes and ordering the items, only the product owner is only held responsible. 
- Apart from the requirements, the rough estimates of the development efforts and business values are found in the product back log. 
- All these values appear in the back log but in the form of some story points developed by the means of some rounded Fibonacci sequence.
- With the help of these estimates the product owner is able to gauge the time line and influence the ordering of the back log items. 
- Contrary to all this, the efforts required for completing each back log item is estimated by the development team. 



What is Sprint Back Log?

- It can be thought of as a list of work or tasks that must be addressed by the development team in the sprint that is to follow. 
- The sprint back log is prepared by obtaining some selective features and stories form the product back log until the sprint includes enough tasks to be accomplished. 
- But while adding the tasks the velocity of the previous sprints should be taken care of by the development team. 
- The stories or the features are broken down in to smaller tasks that up on estimation would not exceed 16 hours of efforts by the development team. 
- This reduces the burden on the development team and helps them understand what is to be done. 
- Rather than assigning the tasks on the sprint back log, they are just signed up by the development team as required for the following sprint and according to the priority and skills of the development team. 
- The working increment that is delivered at the end of the sprint is the sum of all the product back log items that have been completed during that particular sprint and all the other sprints preceding it. 
- It is necessary that the increment is delivered in a working condition and is usable.


Who all are involved in scrum development? What are their roles?


Scrum development process is one of the very famous agile software development processes which is nowadays gaining much popularity with the developers and the programmers. Since its advent it has been proved very effective when it comes to the matters regarding the management of the software system and products development. So many people and professionals are involved with the scrum development process and importance of each of them is so inevitable. 

In this article we will be discussing about all the people involved in the scrum development process. So let us see who all are involved in the scrum development process.

Categories in Scrum


- The people involved in the scrum development process have been divided in to two categories according to the importance of their participation in the development process. -
- Those two categories are namely:
  1. The core roles and
  2. The ancillary roles
- All the roles falling under the above mentioned two categories are pre defined and have their own unique part to play in the development process. 

Core roles in Scrum


- The core roles in the scrum development process are those who are strongly committed to the development of the software project.
- These roles are only responsible for the primary production of the software product. 
               a) The scrum master
                   b) The product owner
                   c) The Development Team

The Scrum Master


- As the name of the role itself suggests, the scrum master is said to be the in charge of the whole scrum development process.
- It ensures that all the processes are being implemented properly and at the right place thus removing the impediments. 
- He/ she also hold the responsibility for the protection of the development team from disruption and other factors that can falter the spirit of the development team. 
- The impediments are removed to the ability of the team by virtue of which it delivers the goals or deliverable of a sprint or iteration.
- Though all the processes in the scrum development are facilitated by the scrum master he/ she is not to be mistaken for the team leader. 
- It is a kind of role that acts as a buffer i.e., resists the development team from all the influencing distractions and disruptions. 
- He/ she always make it a point to ensure that the scrum processes are put in to right use. 
- The scrum master acts as a police thus enforcing the rules. 
- Overall, the scrum master is responsible for maintaining the focus of the development team on the tasks that are at hand and protect the team from any wrong factors. 
- In most of the cases the role of the scrum master has been characterized as “servant- leader” to represent the dual perspectives of the role.

The Product Owner


- This sub category involves all the stake holders and the business people involved in the development process and production process indirectly. 
- One person known as the product represents the voice of all these people. 
- The product owner holds the responsibility for telling the requirements and demands of the customers and the business people to the development team so that the desired values are delivered to the business.

The Development Team


- The values desired by the business are delivered by none other then the development team. - At the end of each sprint, the deliverable obtained is nothing but a shipped product increment. 
- A typical development team may consist of at the most 10 members who possess skills like self organizing and cross functionality.

Ancillary Roles in Scrum


The ancillary roles consist of the following roles:
  1. Stake holders and
  2. The managers. 


Monday, June 4, 2012

What is scrum methodology?


When it comes to the agile software development practices, the “scrum” is what that comes to our ears! The scrum development methodology is not new to us, it is something that we have been witnessing over the years in the field of the software engineering. 

This article has been dedicated to the scrum methodology! Scrum is a very vast topic to be discussed in detail in an article of short length! Here in this article we have tried to give you a glimpse of what is scrum methodology actually. 

Evolution of Scrum Methodology


- Scrum being an agile software development is supposed to follow a methodology based up on the iterative and incremental model of development. 
- Over the years the scrum development methodology has made the development and management of the software products and projects. 
- The birth of the software development was seen as an approach towards the commercial production of the software products thus making a remarkable improvement in the flexibility and speed. 
- The cross functionality and self organized teams are considered to be the best ones to perform the scrum development. 
- Initially the scrum development methodology was known as the rugby or the holistic approach to development. 
- The rugby approach was first replaced with the name scrum methodology in the year of 1995 when the a paper describing this methodology was presented in the “business object design and implementation work shop” by the Schwaber and Sutherland. 
- This workshop was conducted as a part of the OOPSLA ’95. Scrum consists of some of predefined roles and methods that regulate the whole development process. 

Roles in Scrum Development


The pre defined roles in the scrum development have been categorized in to two categories as we have discussed below:
  1. The Scrum Master: As the role itself suggests this person is responsible for taking the charge of the whole development process.
  2. The Product Owner: This role is also self justifying but does not refers to a single person, rather it includes all those people who are to be benefitted by the software product on the terms on which it has been agreed up on.
  3. The development team: The scrum development team is one that has the characteristics like cross functionality and self organizing.

Terminology used in Scrum Methodology


Now we shall discuss some terminology of the scrum methodology:

1. Sprint: Like so many cells together form a tissue, similarly many iterations or sprints together make up the sprint development cycle. Like all the other software development processes the sprints or the iterations in the scrum process are time boxed. And also like what happens in all the other agile software development processes, here also a sprint planning meeting is conducted before the starting of the sprint. The features that have to be incorporated in to the software system in a particular sprint are obtained from the product back log.

2. Story time: This is the time spent by the whole team grooming the back logs. The existing block usage efforts and points are estimated during this time thus chalking out  a whole new acceptance criteria for the individual stories. 

3. Daily Scrum: This is a sort of a project meeting that takes during the sprint and is also known as the daily stand up. Certain guidelines are must to be followed in this meeting:
(i)   Meeting should start at the exact time.
(ii) The participation of the core roles is mandatory.
(iii)Meeting should not exceed 15 minutes.
(iv)Meeting should take place at a fixed place every time. 
(v)  Each member must answer the below mentioned 3 questions:
(a)  What have you done?
(b)  What do you plan to do today?
(c)  Do you see any stumbling blocks?


What is meant by Scrum? What are principles of scrum?


You must have heard about the scrum being a very popular and good agile software development process. In this article we shall be discussing about the scrum and the principles it follows in short. 
"The scrum under the context of the agile development has been defined as an iterative and incremental method that follows agile principles and rules for the management of the software products and projects and applications".

Stages through a Scrum Process


Before we discuss more about the scrum methodology let us see what all are the various stages that are followed through a scrum process:
  1. Product back log items
  2. Sprint back log
  3. Sprint (from a few weeks to months)
  4. Working increment of the software

Roles involved in Scrum Methodology


- The scrum methodology was developed as an approach that would support commercial product development with increased speed and flexibility.
- Earlier, the scrum methodology was known as the rugby approach. 
- The scrum follows a set of methods and involves some predefined roles. 
- First we shall mention the predefined roles involved in the scrum:
  1. The development Team: The scrum development team has been recognized as a self organizing and cross functional team that is responsible for the actual analysis, implementation, design and testing etc.
  2. The Product Owner: In the scrum development the customer is said to be the rightful owner of the software product. But, in some cases this role may represent all the business people and the stake holders.
  3. The Scrum Master: As the role itself suggests, the scrum master is responsible for:
 (i)   ensuring that the scrum discipline is maintained throughout the process,
(ii)  protecting the development team against the disruption,
(iii) removing the impediments and so on.

- Unlike the other agile software development methodologies, the scrum iterations have got a name which is “sprint”. 
- Many sprints or iterations together make up a complete scrum cycle. 
- The above mentioned three roles are known as the core roles of the scrum development.
- There are certain other roles that are called the ancillary roles and have been mentioned below:
  1. Managers: They are held responsible for the management of the development environment.
  2. Stake holders: It includes the customers and the vendors also. Stake holders include all the people for whom the project is developed. They have direct involvement in the development of the software project.
- The above mentioned ancillary roles have got no formal role in the development process as to say. 

Over the years the scrum has been effectively put in use for the development and management of the software projects that have to be developed according to the agile principles. 
The scrum has also been a centre for most of the controversy because of its proposed conventional ideas about the traditional project management practices. 

What are certain artifacts associated with scrum?


- Scrum practices come in to play when it becomes difficult to move ahead with the other development methodologies. 
- The scrum has come to represent an overall new approach radical in nature for the planning and management of the projects. 
- It has brought the operation properties and the certainties and the decision making authority all at the same level. 
- Following the principles of the agile manifesto, for the scrum development also daily scrum meetings are held known as the daily stand ups. 
- There are certain artifacts associated with the scrum development as mentioned below:
  1. Sprint burn down chart: This chart represents the progress made in a particular sprint against the length of the sprint.
  2. Product back log: This log consists of the high level requirements that have been prioritized by the customer.
  3. Sprint back log: This log consists of the tasks that have been prioritized by the development team and have to be completed in that particular sprint. 


Wednesday, May 16, 2012

Explain Scrum - a type of an agile method?


Scrum as we all know is the agile software development methodology most in use nowadays for the development of many types of software systems and applications. It has been classified under the category of iterative and incremental development methodologies that works in an excellent way in managing the software products and projects. It also helps in management of the application development. 

Roles & Methods for Scrum Methodology


Some sets of predefined roles and methods have been defined for the scrum methodology:
1. The development team: It involves a team that is cross functional and self organized and takes care of the following processes:

          (a)    Analysis
(b)   Designing
(c)    Implementation
(d)   Testing and so on.  
At the end of each sprint, a shippable product is to be delivered by the development team. A typical development team may constitute of 3 – 9 members with self organizing skills which are required even though there is an interaction with the PMOs or project management organizations.

2. The product owner: The product owner is the representative of all the stake holders and sometimes may also represent the business. He/ she can also be regarded as the soul voice of the customer and he/ she is responsible for the following activities:
          (a)    Writing the customer centric items or user stories
(b)   Prioritizing the requirements based up on the user stories
(c)    Adding those identified requirements to the back log of the product.
This role is not supposed to be combined with the next one i.e., the scrum master.

3. The scrum master: The scrum master is responsible for ensuring that the whole process if followed and the impediments to the ability of the team are removed so as to make the delivery of the sprint goals easy and early. He is the one who facilitates the whole scrum development process. Scrum master as the name suggests should not be mistaken as the leader of the development team, he is in fact a buffer between the distracting influences and the development team. In a way he/ she make sure that the development process takes the intended route and enforces the rules to do so.
The above mentioned roles are called the core roles and there is another class of roles called the “ancillary roles” and as such they have no formal role but they have to be taken in to account. They have been mentioned below:
  1. The stake holders and
  2. The managers.

How Scrum is Useful?


- Scrum is quite useful when it comes to the management of the agile projects since it reinforces the interest in the agile development of the project. 
- The scrum and agile development method had come to challenge the conventional ideas regarding the agile project management. 
- Scrum methodology helps in the agile development at the steps where it becomes difficult to set the plan for upcoming processes. 
- The scrum and agile development methodology makes use of the concepts quite contrary to those used by the traditional development methods i.e., the mechanism of the empirical process control.
- Here the core management technique is constituted by the feedback loops. 
- The traditional development methods were command and control oriented.
- This mixed methodology of agile development and scrum has come to represent an entirely new radical approach that plans and manages the agile projects. 
- It has brought the level of the decision making authority to that of the operation certainties and properties.
- A project status meeting is held every day till the development continues which is called the “daily scrum”. 
- Below mentioned are some of the project management tools that support scrum:
  1. Banana scrum
  2. JIRA using Green Hopper plug-in
  3. Mingle by thought works studios
  4. Scrum Do
  5. Pivotal tracker
  6. Microsoft team foundation server


Facebook activity