Thursday 27 March 2014

Types Of Burn Down Charts In Scrum – What And Why They Are Used For

In scrum, a burn down chart is used to provide a graphical representation of the total work remaining, or left to do, versus time. The pending or outstanding work is generally represented along the vertical X-axis, while the time is plotted against the horizontal Y-axis. A “burn down” chart should ideally be understood as a “run down” chart i.e. how much of total work is still pending and needs to be completed. Even though burn down charts are synonymous with Agile framework and scrum methodologies, they can also be used in other non-Agile frameworks. Basically, burn down charts can be used in any project in which the progress can be measured with respect to time.
Scrum supports several types of burn down charts, and they can be effectively used to measure the progress right from the macro level. At the project level, burn down charts can be effectively used to estimate and depict the progress made. When the project is segregated into its fundamental components at the product level, and when small sets of requirements in the form of user stories taken up for development at the sprint level, the progress can still be measured using burn down charts – even at the micro level.

Product Burn down Chart
The product backlog, created by the product owner at the onset of the scrum project, forms the backbone of all product related requirements in the project. It is the main list which constitutes the product. As the product items, or the user stories, are taken up for development during the sprint, certain stories in the product backlog get marked as “Done” as the sprints keep on progressing. At the end of each sprint, the items successfully developed by the team are accepted as complete by the product owner and flagged accordingly in the product backlog. Therefore, at any given instance of time, the product backlog can consist of complete or pending items. The chart explaining the pending product items and those that have been completed over time is known as the product burn down chart.

Sprint Burn down Chart
During the first half of the sprint planning meeting, the product owner transfers some of the unfinished user stories from the product backlog into the sprint backlog. The stories contained within the sprint backlog are taken up for development by the team members during the daily sprint activity. Each day, as per plan, certain user stories are taken up for development by the programmers, and efforts are made to complete them by the end of the working day, or the “sprint” day. As the sprint proceeds each day, certain stories are completed, while the pending ones start reducing in numbers. The chart, which represents how many user stories have been completed, and ideally how many stories should or ought to be finished each day, while the sprint is underway is known as the sprint burn down chart.Read more on http://blog.quickscrum.com/post/2014/03/06/Types-Of-Burn-Down-Charts-In-Scrum-%E2%80%93-What-And-Why-They-Are-Used-For.aspx

          "Please visit http://www.quickscrum.com to download the Quickscrum tool"





Wednesday 26 March 2014

Advantages Offered By Scrum Methodology – Scrum Benefits Explained For Scrum Beginners

The scrum methodology
The usage of the word “Scrum” is inspired by a Rugby game technique where individual team members form a group, and collaborate to fulfill a common objective – sprinting with the ball in hand, and covering a certain distance to “achieve” a touchdown. The concept used in scrum methodology is quite similar to the “scrum” used in Rugby. Just as Rugby players huddle together and make efforts to gain the possession of the ball so they can undertake the sprint to achieve a touchdown, in scrum, the individual team members too work in unison, and collaborate to develop a shippable product in short bursts of developmental activity known as “sprints”. Sprints are typically short and target oriented in nature, just as they are in Rugby. Generally, a scrum development team may consist of six to seven members working together under a common roof, or in certain cases, they may be located in different geographic locations. 

Initially, the main purpose of the scrum framework was to develop and manage software-based projects. However, over the years the pioneers who originally designed the framework put in efforts so the methodology could evolve to suit non-IT or software based projects. However, implementing scrum for non-IT based projects, and the fulfillment of project goals requires specialized training, the same case as in software-based projects. It is very important to understand that scrum is a concept – a methodology – and it needs to be enforced or implemented in a well-planned and organized manner for it to be effective.

The scrum team is headed by a product owner who represents the stakeholders and their interests while executing the project, and is accompanied by a scrum master who oversees that scrum is properly implanted at all times while the project is underway. The scrum development team carries out the project development in short bursts of iterations known as “sprints”. The development team is typically composed of trained professionals, who have specialized in a variety of IT disciplines. They can be software developers or programmers, software engineers, Q/A specialists, and individuals who have specialized in other branches belonging to the IT segment.

Advantages of scrum
Scrum framework offers many advantages not found in traditional waterfall development methodologies:

·       Responding to the market changes
Perhaps one of the major factors which often affect, and which may also result into an abnormal termination of an ongoing project is the changes occurring in the market while the project development is underway. Quite often, a project may start successfully and proceed as per plan, but a subsequent release of more effective and functional product may render the current object obsolete and useless. This has happened many a times in the IT market, and many IT companies have suffered heavy losses, and even closed down prematurely. With scrum, it becomes easy to incorporate the changes occurring in the market. New changes can be easily introduced in the project life cycle, and existing development can be modified or “upgraded” to become more effectual and meaningful. In all, scrum helps to incorporate the changes occurring in the market related conditions as and when they occur in an easy and effective manner.

·       Increasing the ROI
Generally, when development is undertaken to manufacture a particular product, it is usually found that approximately 60% of the features associated with the product are rarely, or never really used. However, their development is still carried out simply because they “are there” and were planned to be developed when the project was intercepted. A lot of time, efforts, and cost are involved in developing the features and functionality linked with a product. If the functionality is not really useful, the efforts and cost involved in developing the feature is wasted since it may not have a business value attached to it. Scrum makes it possible to identify such features, and curtail their development, which makes it very convenient for the management to save money and human resources. In scrum, the business value associated with the features is easily identifiable, and their development can be regulated in a much better way as compared to other development methodologies. The investment returns are substantially increased if scrum is used.

·       Continuously improvising upon the project development process

Scrum supports continuous improvement in each project related aspect while the development activity is carried out. The framework is specially designed to identify problematic issues and resolve them as and when they occur. A built in “mechanism” constantly helps to monitor what is currently going on, and which of the issues are holding the organization back in delivering the desired outputs. This is an inherent feature of scrum.Read more on http://blog.quickscrum.com/post/2014/03/18/Advantages-Offered-By-Scrum-Methodology-%E2%80%93-Scrum-Benefits-Explained-For-Scrum-Beginners.aspx  

              "Please visit http://www.quickscrum.com to download the Quickscrum tool" 

Tuesday 25 March 2014

The Main Reasons Why Work Is Not “Done” In Scrum, And Why the Acceptance Criteria Is Not Met

Perhaps the most important aspect of scrum methodology is the concept of “Done” or meeting the acceptance criteria while developing the tasks. The product owner, who represents the interests of the stakeholders, approves and certifies the acceptance criteria defined in individual user stories, or the product backlog items. It is very much important for the user stories to be accepted as “Done” because in scrum an item can only be considered as “shippable” and “complete” when its “Done” criteria is met. The terminology used to describe “Done” is synonymous with the acceptance criteria in scrum methodology. The words describe the same thing.

There are times when the acceptance criterion is not met, and the user stories are not considered as complete. This can be the worst possible scenario as far as conducting the daily sprint is concerned, since the basic objective of the sprint cycle is to meet the acceptance criteria and deliver a shippable product at the end of the iteration. Unaccepted and unfinished user stories reflect unsuccessful sprints and improper implementation of scrum.

It is worth knowing about some scenarios, which can result in a condition when the “Done” criterion is not fulfilled in scrum. 

1.    Lack of a good cross -functional team
By “cross functional” we mean a team, or a group of individuals having different areas of specializations, who work in unison to achieve a common objective or a cause. In scrum, if the product is technically complex, or if the functionality associated with the product is varied and extensive, it is essential to have a cross functional team. When individuals with different areas of specializations work together to develop a solution, it becomes very easy to carry out the development activity, since the technical requirements are catered to by developers who have required levels of expertise and can provide clear and concise solutions for a given task or a problem. Queries are resolved in a more successful manner, and in the least amount of time.

During the sprint, when or if a team member faces a particular problem, it is possible for other cross-functional team members to contribute their knowledge and skills, and provide a proper solution for the problem in hand. This makes the development work easy, fast, precise, and effective. It is very important, and recommended, for scrum teams to be cross-functional. 

Non cross-functional team members may find it exceedingly difficult to find quick solutions when problems arise during the sprint activity. The primary reason why this happens is because they lack the required experience, or do not possess sufficient skill sets to offer effective solutions, which can solve the problem currently impeding further product development. The levels of expertise typically required may include designing, business analysis, development, database designing, testing, and other similar skills. It is essential for the developer to be proficient and very good in his or her work. Failing to have such technically sound team members in the sprint may result in substandard or defective developmental activity. Tasks which are not technically perfect, or which have bugs in them may not be accepted as “Done”. 

2.    Unclear or undefined acceptance criteria in the user stories and tasks
It becomes very hard and almost impossible for the development team to successfully complete the tasks included in the sprint backlog if the meaning of “Done” is not properly explained in the user story, of if the story simply fails to include the acceptance criteria required for its development. Typically, in such cases the team starts working blindly, and often pursues a vision of what the actual “Done” should ideally include in the user story. Rather than the product owner explaining the meaning of “Done”, the team assumes what the “Done” criteria is and starts developing the task based upon their assumptions.

This can prove to be a dangerous habit as far as the project is concerned since the entire team starts pursuing unclear and even undefined objectives which have no relevance whatsoever as far as the project is concerned. The result is a lot of “wastage” suffered by the stakeholders and the management in terms of unproductive working hours and human resources.

3.    Using outdated or obsolete technologies for development purposes
Technology keeps on changing continuously. For the team members, it is essential that they remain in touch with the latest development techniques and trends. As it quite the norm, existing technology tends to “phase out” over time, and is replaced by emergent technologies, which are more powerful, dynamic, and effective.

Using older technologies may lead to incomplete development, simply because phased out technologies do not have the potential to offer the functionality needed to develop a competitive product. Moreover, the team may find it very hard, or impossible, to meet the acceptance criteria, and not be able to develop the task. At times, the definition of “Done” may not be satisfied by using out dated technologies. Using old engineering practices can lead to undue wastage of development time, and even lead to the development of sub standard products. It is very important to use upcoming and newly emerging technologies to deliver quality products.

4.    An overworked development team
The stakeholders and the management are mainly concerned with marketing the product once its development is completed. Their objective is to launch the product as soon as possible, and benefit from the amount they have invested in the project. They often compel the scrum team to take up more work, or even complete the project well before the decided completion date.

This can make the development team to cut corners while completing their sprint tasks. Since the team is forced to work against time, it is going to affect the development and quality of the finished tasks. As enough time is not available to check and verify the acceptance criteria, the team may simply decide to carry out the development and submit their tasks in the sprint review meeting without verifying the acceptance or “Done” criteria. The team fails to perform properly because it is compelled to “deliver more” and it simply lacks the time to check the acceptance criterion.

5.    Lack of collaboration and integration activity
 The main essence of scrum is collaboration. Team members should work in a joint manner to achieve common objectives. Scrum methodology also advocates team members to co-operate and help each other when problems arise and solutions are required. Moreover, collaboration is essential when the team is undertaking the sprint. Collaborated efforts lead to a well-organized team and improved productivity.

When the team members start working individually and stop collaborating, it leads to a situation where in the tasks are not properly linked up, or integrated in a proper manner, to be effective. Generally, during the sprint, the segregated user stories are developed in the form of tasks, and the tasks have to later integrated to fulfill the acceptance criteria. If the team members are working individually, the tasks cannot be integrated or linked up as specified in the acceptance criteria. The definition of “Done” is therefore not fulfilled.

                        "Please visit http://www.quickscrum.com to download the Quickscrum tool" 


Monday 24 March 2014

Dual Roles Of A Product Owner – The Stakeholders And The Team, How To Balance Them?

A product owner has several responsibilities, and is required to focus upon the two main aspects associated with scrum – the end users, market conditions, and the stakeholders on one hand, and the scrum team on the other. It is not an easy job to carry out. Quite often, the product owner may be faced with a dilemma while carrying out his or her responsibilities on behalf of the stakeholders, and convincing the team members to perform, and act in their interests. It can be a challenging position indeed.     

The outward view: Users, customers, and stakeholders
The first and the foremost priority for the product owner is to understand the needs of end users and the customers. The basic purpose of having a scrum project is to develop a product which is acceptable to them. The consumers are important for the project since they determine whether the product is going to succeed in the market, and if so, what the ideal product ought to offer. The person may be required to conduct personal and group interviews to understand their needs in depth, and avail a clear vision as to what kind of product they really desire and expect. As is the case, many times different users have their own ideas as to what the end product should typically offer in terms of features and functionality. The product owner is forced to review their expectations and ideas at a macro level and decide the practical aspects concerning the product to be developed. If the users have varying requirements or differing perspectives as to what the product should include, it is eventually up to the product owner to decide which of the aspects discussed are really important and feasible, and which can be incorporated into the project.

The stakeholders are important since they invest into the project. The product owner receives the actual product related requirements from the stakeholders, who also have an idea regarding what the end users want. However, their priorities and perspective is centered upon generating a profit out of the project, and it is up to the product owner to deliver the project – nicely wrapped up and ready for sale. The stakeholders also remunerate the efforts of the entire scrum team including the product owner. It is therefore essential that the product owner complies with their instructions and act in their direct interests.

The product owner has to respond to the questions put forward by the users, customers, and the stakeholders. He or she has to advise them, and maintain a vision that can best convey what is important and profitable to them. 

The inward view: The scrum team – scrum master and the development team
While the stakeholders and the end users are important, the development team and the scrum master too are important to the product owner since they are directly responsible for developing the project. Scrum supports collaboration, and the entire team collaborates with the product owner while scrum is implemented in the project. Needless to say, without their help, it is not possible for the product owner to deliver anything.

In most cases, the product owner acts as a facilitator and ensures the team is properly working at all times. He or she has to remain close to the actual development work, and be available whenever the team faces any problems or issues with the acceptance criteria linked with the user stories, and resolve the issues when they occur. The product owner has certain responsibilities towards them. Apart from being a product owner, the person also acts as their mentor, guide, and a good friend when his or her role so demands. Read more http://computersight.com/programming/dual-roles-of-a-product-owner-the-stakeholders-and-the-team-how-to-balance-them/ 


                  "Please visit http://www.quickscrum.com to download the Quickscrum tool" 



Thursday 20 March 2014

In Scrum, Is It Possible To Cancel A Sprint? If So, When?

The scrum framework and importance of sprints
Scrum is primarily about dealing with changing market conditions and introducing changes in the product definition while it is being developed. It is very difficult, and in certain cases impossible, to incorporate changes in the features and functionalists linked with the product while its development is currently underway. Traditional development methods such as waterfall do not offer facilities to change the product features once the development has started, since the entire development occurs in stages and it is not possible to reverse the stages, or “undo” the work carried out, nor it is possible to “pause” the development activities and restart them with new ideals and objectives. Scrum makes this possible because the actual development is carried out in sprints which generally last for two weeks. It is very easy to add on, or update the functionality associated with a particular feature of the product.

In scrum, the project requirements are defined in the form of user stories, or product backlog items, which constitute the product backlog. The user stories are arranged as per their priorities and importance in the backlog, and whenever development is to be carried out, a small portion or a set of the backlog, usually the top portion which is more important and carries a higher business value, is transferred to the sprint backlog. During the sprint, each user story contained within the sprint backlog is taken up for development by the team members. After the sprint is completed, the completed user stories are taken up for verification and adjudged whether they are stoppable, and are bug free.

The main feature of scrum which makes it unique is that it supports development in iterations known as sprints. The framework is specially designed to control the sprint, with its checks and counter checks that help to fulfill the objectives defined in the project. If any new feature or functionality needs to be introduced in the project, it can simply be defined as a user story in the product backlog, and subsequently transferred to the sprint backlog for development. The sprint is the most important activity of scrum, and the framework has laid down many rules regarding how it should be controlled. The rules are mandatory, and should be implemented to get the most out of scrum. 

Is it possible to terminate a sprint abnormally before it completes?

The team members have to complete their development tasks before the sprint ends. It is imperative that the sprint process be time boxed, and completed properly if positive results are to be achieved out of scrum implementation. However, under some rare circumstances, a sprint may be terminated before it can complete its full iteration or cycle. The product owner decides whether the sprint can, or should be terminated. Read more https://www.apsense.com/article/in-scrum-is-it-possible-to-cancel-a-sprint-if-so-when.html

                  "Please visit http://www.quickscrum.com to download the Quickscrum tool" 

Wednesday 19 March 2014

The Purpose And Goals Of Carrying Out Product Backlog Refinement In Scrum

The official scrum guide mentions about carrying out routine maintenance activities to update the product backlog, or to carry out the product backlog refinement. The exact time to be invested in the grooming activity depends upon the management, and how scrum is to be implemented in the project. A rule-of-the-thumb followed is to put in approximately 10% of the time utilized during the sprint activity, into the grooming activity. It is important to be clear regarding some of the aspects associated with product backlog refinement.

Purpose and goals of carrying out the refinement
The primary reason why the product backlog should be refined is to update or rebuild the backlog so that it remains consistent with the requirements provided by the stakeholders with regards the new features and functionalities to be included in the project. Another reason is to review existing user stories or product backlog items and decide whether they are still useful or pertinent from the development point of view, and to update the acceptance criterion and the explanation detailed in each PBI.  

It is recommended to use the “DEEP” method - detailed appropriately, estimated, emergent, and properly ordered – while prioritizing the user stories within the backlog. Larger stories or epics should be systematically broken down in to more manageable smaller ones, proper estimation by assigning relevant story points to the PBIs should be carried out,  user stories should be rearranged as per the new priorities,  and the queries regarding the development of user stories during the sprint should be effectively answered by the product owner. Whenever a meeting is planned to refine the PBIs, the objective should be to carry out enough refinement work so that it lasts for at least three future sprints.   

Duration and frequency of the grooming activity
Each activity and meeting is time boxed in scrum. Following the same principle, the product backlog refining or grooming activity should be time boxed too. However, in practice, there is no pre-designated activity or a meeting for planning and carrying out the product backlog refinement activity in the same manner as the sprint planning meeting and the sprint retrospective meeting is held. Backlog grooming is carried out more as a routine activity than anything else in scrum, and the guide does not exactly specify how much time or efforts should be invested in the activity. Perhaps a possible reason could be that the product development and creation of product backlogs vary from project to project, and it is difficult to standardize how the grooming activity should be carried out since the size and nature of the product backlog cannot be adjudged. Read more on http://ezinearticles.com/?The-Purpose-And-Goals-Of-Carrying-Out-Product-Backlog-Refinement-In-Scrum&id=8381136

       "Please visit http://www.quickscrum.com to download the Quickscrum tool"