Thursday, October 23, 2014

Scrum & Agile Basics, Salesforce development methodology.

Scrum & Agile Basics, Salesforce development methodology.


Scrum is a lightweight process framework for agile development, and the most widely-used one.
  • A “process framework” is a particular set of practices that must be followed in order for a process to be consistent with the framework. (For example, the Scrum process framework requires the use of development cycles called Sprints, the XP framework requires pair programming, and so forth.)
  • “Lightweight” means that the overhead of the process is kept as small as possible, to maximize the amount of productive time available for getting useful work done.
A Scrum process is distinguished from other agile processes by specific concepts and practices, divided into the three categories of Roles, Artifacts, and Time Boxes. These and other terms used in Scrum are defined below.
Scrum is most often used to manage complex software and product development, using iterative and incremental practices. Scrum significantly increases productivity and reduces time to benefits relative to classic “waterfall” processes. Scrum processes enable organizations to adjust smoothly to rapidly-changing requirements, and produce a product that meets evolving business goals.
An agile Scrum process benefits the organization by helping it to
  • Increase the quality of the deliverables
  • Cope better with change (and expect the changes)
  • Provide better estimates while spending less time creating them
  • Be more in control of the project schedule and state
As a result, Scrum projects achieve higher customer satisfaction rates.

scrum development
scrum process
Agile development refers to any development process that is aligned with the concepts of the Agile Manifesto. The Manifesto was developed by a group fourteen leading figures in the software industry, and reflects their experience of what approaches do and do not work for software development.

The Manifesto says:
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more. The agile philosophy holds that the best way to meet customer needs is through the collaboration of a committed group of people, who focus on achieving results quickly, with as little process overhead as possible.
A key element of this philosophy is that we must trust people and their ability to collaborate, more than we trust any particular process. This principle follows from the fact that people can succeed without a formal process, but no process can succeed without people. For this reason, we should design an agile process that best taps the abilities of team members by emphasizing collaboration, rather than relying on the structure of a process to guarantee success.
The Agile Manifesto does not specify any particular practices that a development team should follow. Specific agile process frameworks, such as Scrum and XP, do define practices that must be followed.

A Deeper Look Into Scrum

 Benefits of Scrum
The benefits are different for different people.

Benefits to Customer

Customers find that the vendor is more responsive to development requests. High-value features are developed and delivered more quickly with short cycles, than with the longer cycles favored by classic “waterfall” processes.
p

Benefits to Vendors

Vendors reduce wastage by focusing development effort on high-value features, and reduce time-to-market relative to waterfall processes due to decreased overhead and increased efficiency. Improved customer satisfaction translates to better customer retention and more positive customer references.

Benefits to Development Teams

Team members enjoy development work, and like to see their work used and valued. Scrum benefits Team members by reducing non-productive work (e.g., writing specifications or other artifacts that no one uses), and giving them more time to do the work they enjoy. Team members also know their work is valued, because requirements are chosen to maximize value to customers.

Benefits to Product Managers

Product Managers, who typically fill the Product Owner role, are responsible for making customers happy by ensuring that development work is aligned with customer needs. Scrum makes this alignment easier by providing frequent opportunities to re-prioritize work, to ensure maximum delivery of value.

>Benefits to Project Managers

Project Managers (and others) who fill the ScrumMaster role find that planning and tracking are easier and more concrete, compared to waterfall processes. The focus on task-level tracking, the use of Burndown Charts to display daily progress, and the Daily Scrum meetings, all together give the Project Manager tremendous awareness about the state of the project at all times. This awareness is key to monitoring the project, and to catching and addressing issues quickly.

Benefits to PMOs and C-Level Executives

Scrum provides high visibility into the state of a development project, on a daily basis. External stakeholders, such as C-Level executives and personnel in the Project Management Office, can use this visibility to plan more affectively, and adjust their strategies based on more hard information and less speculation.

Scrum differs from traditional “waterfall” approaches to project management in many ways, but is based on sound project-management principles.

Requirements

Scrum does not define just what form requirements are to take, but simply says that they are gathered into the Product Backlog, and referred to generically as “Product Backlog Items,” or “PBIs” for short. Given the time-boxed nature of a Sprint, we can also infer that each set should require significantly less time to implement than the duration of the Sprint. Most Scrum projects borrow the “XP” (Extreme Programming) practice of describing a feature request as a “User Story,” although a minority uses the older concept of a “Use Case.” We will go with the majority view here, and describe three reasonably-standard requirements artifacts found in Product Backlogs.

User Story

A User Story describes a desired feature (functional requirement) in narrative form. User Stories are usually written by the Product Owner, and are the Product Owner’s responsibility. The format is not standardized, but typically has a name, some descriptive text, references to external documents (such as screen shots), and information about how the implementation will be tested.
For example, a Story might resemble the following:

Name: Planner enters new contact into address book, so that he can contact the person later by postal or electronic mail
Description: Planner enters standard contact information (first and last name, two street address lines, city, state, zip / postal code, country, etc.) into contact-entry screen. He clicks “Save” to keep the data, and “Cancel” to discard data and return to previous screen.
Screens and External Documents: http://myserver/screens/contact-entry.html
How to test: Tester enters and saves the data, finds the name in the address book, and clicks on it. He sees a read-only view of the contact-entry screen, with all data previously entered.

The elements in this User Story are:
  1. Name: The Name is a descriptive phrase or sentence. The example uses a basic “Role-Action-Reason” organization. Another common style, popularized by Mike Cohn, follows the template “As a <type of user>, I want <some goal> so that <some reason>.” The choice of template is less important than having a workable standard of some kind.
  2. Description: This is a high-level (low-detail) description of the need to be met. For functional (user-facing) requirements, the description is put in narrative form. For non-functional requirements, the description can be worded in any form that is easy to understand. In both cases, the key is that the level of detail is modest, because the fine details are worked out during the implementation phase, in discussions between team members, product owners, and anyone else who is involved. (This is one of the core concepts of Scrum: Requirements are specified at a level that allows rough estimation of the work required to implement them, not in detail.)
  3. Screens and External Documents: If the Story requires user-interface changes (especially non-trivial ones), the Story should contain or link to a prototype of the changes. Any external documents required to implement the Story should also be listed.
  4. How to test: The implementation of a Story is defined to be complete if, and only if, it passes all acceptance tests developed for it. This section provides a brief description of how the story will be tested. As for the feature itself, the description of testing methods is short, with the details to be worked out during implementation, but we need at least a summary to guide the estimation process.
There are two reasons for including the information about how to test the Story. The obvious reason is to guide development of test cases (acceptance tests) for the Story. The less-obvious, but important, reason, is that the Team will need this information in order to estimate how much work is required to implement the story (since test design and execution is part of the total work).

Story

Not all requirements for new development represent user-facing features, but do represent significant work that must be done. These requirements often, but not always, represent work that must be done to support user-facing features. We call these non-functional requirements “Technical Stories.”
Technical Stories have the same elements as User Stories, but need not be cast into narrative form if there is no benefit in doing so.
Technical Stories are usually written by Team members, and are added to the Product Backlog. The Product Owner must be familiar with these Stories, and understand the dependencies between these and User Stories in order to rank (sequence) all Stories for implementation.

Defect

A Defect, or bug report, is a description of a failure of the product to behave in the expected fashion. Defects are stored in a bug-tracking system, which may or may not be physically the same system used to store the Product Backlog. If not, then someone (usually the Product Owner) must enter each Defect into the Product Backlog, for sequencing and scheduling.

Roles

The three roles defined in Scrum are the ScrumMaster, the Product Owner, and the Team (which consists of Team members). The people who fulfill these roles work together closely, on a daily basis, to ensure the smooth flow of information and the quick resolution of issues.

ScrumMaster

The ScrumMaster (sometimes written “Scrum Master,” although the official term has no space after “Scrum”) is the keeper of the process. He is responsible for making the process run smoothly, for removing obstacles that impact productivity, and for organizing and facilitating the critical meetings.
scrum roles
The ScrumMasters responsibilities include
  • Removing the barriers between the development Team and the Product Owner so that the Product Owner directly drives development.
  • Teach the Product Owner how to maximize return on investment (ROI), and meet his/her objectives through Scrum.
  • Improve the lives of the development Team by facilitating creativity and empowerment.
  • Improve the productivity of the development Team in any way possible.
  • Improve the engineering practices and tools so that each increment of functionality is potentially shippable.
  • Keep information about the Team’s progress up to date and visible to all parties.
In practical terms, the ScrumMaster needs to understand Scrum well enough to train and mentor the other roles, and educate and assist other stakeholders who are involved in the process. He should maintain a constant awareness of the status of the project (its progress to date) relative to the expected progress, investigate and facilitate resolution of any roadblocks that hold back progress, and generally be flexible enough to identify and deal with any issues that arise, in any way that is required. He must protect the Team from disturbance from other people by acting as the interface between the two.
The ScrumMaster does not assign tasks to Team members, as task assignment is a Team responsibility. His general approach towards the Team is to encourage and facilitate their decision-making and problem-solving capabilities, so that they can work with increasing efficiency and decreasing need for supervision. His goal is to have a team that is not only empowered to make important decisions, but does so well and routinely.

Product Owner

The Product Owner is the keeper of the requirements. He provides the “single source of truth” for the Team regarding requirements and their planned order of implementation.
In practice, the Product Owner is the interface between the business, the customers, and their product related needs on one side, and the Team on the other. He buffers the Team from feature and bug-fix requests that come from many sources, and is the single point of contact for all questions about product requirements. He works closely with the team to define the user-facing and technical requirements, to document the requirements as needed, and to determine the order of their implementation. He maintains the Product Backlog (which is the repository for all of this information), keeping it up to date and at the level of detail and quality the Team requires.
The Product Owner also sets the schedule for releasing completed work to customers, and makes the final call as to whether implementations have the features and quality required for release.

Team

The Team is a self-organizing and cross-functional group of people who do the hands-on work of developing and testing the product. Since the Team is responsible for producing the product, it must also have the authority to make decisions about how to perform the work. The Team is therefore self-organizing: Team members decide how to break work into tasks, and how to allocate tasks to individuals, throughout the Sprint.
The Team size should be kept in the range from five to nine people, if possible. (A larger number make communication difficult, while a smaller number leads to low productivity and fragility.)
Note: A very similar term, “Scrum Team,” refers to the Team plus the ScrumMaster and Product Owner.

Next Steps with Scrum

Agile Team Definition Template:

The amount of work an Agile Team can perform in a Sprint must be known in order to plan the Sprint effectively. You can use this template to estimate the Team’s capacity for work for a particular Sprint.
First enter the Sprint duration, and the hours the whole Team spends in standard meetings and activities, to compute the best-case “free time” in which Team Members can be working on Sprint Backlog Items. Then provide each Team Member’s hours off per Sprint, and percentage availability to work on Sprint Backlog items. The template will then compute the Team’s total capacity for work in Points, or Person-Days, and the effective number of full-time employees (Net Team Resources).
When you have estimated the Team’s capacity, and estimated the size of requirements (Stories, Defects) in the Product Backlog, you can then determine which items will fit in this Sprint’s Backlog.

Agile Estimation Decks:

Estimating work is difficult to do well, and difficult to do quickly. Our estimation process leverages your team’s expertise to produce quick and accurate results. By using these estimation decks, we eliminate the problem of expert bias, and ensure that your team produces the best possible results!

Scrum Cheet Sheet

This is a great reference sheet to have on hand when thinking about Scrum or studying for the Certified Scrum Master Exam. It summarizes the Scrum Roles, Scrum Artifacts, Scrum Meetings and more. Pin it up on your wall or carry it around with you to help yourself remember the key techniques of a scrum project.
Also included:
  • Scrum Estimation Techniques
  • Scrum Tools
  • Scrum FAQ’s
  • Scrum Process
  • Glossary of Terms

Certifications

The Scrum Alliance has defined five certifications, as indicated in the chart.
The primary value of a certification is always in the opportunities it opens up for the holder.
  • Companies increasingly seek Project Managers with CSM certifications, to organize and facilitate their Scrum development teams.
  • Product Managers who have CSPO certifications are more attractive to companies that develop with Scrum, than those who don’t.
  • The CSP provides a strong statement to potential employers that the holder has deep practical experience with Scrum (as a ScrumMaster or Product Owner), and corresponding value.
  • The CSC and CST certifications are useful for firms and consultants who provide Scrum coaching and teaching services, as they confirm that the holder has strong experience in these areas. (A CST is also required for anyone who will teach a CSM or CSPO course.)
All Scrum certifications are offered by the Scrum Alliance. For information on how to apply for certifications, consult theScrum Alliance certification page.

Certified Scrum Master (CSM)

The CSM certification is the starting point for people who wish to fill the ScrumMaster role, either as their primary goal, or as a step towards other certifications. A CSM indicates that the holder has attended a CSM class, and passed the CSM exam.
After sucessfully completing ScrumMaster course, the student receives an email from the Scrum Alliance. The message contains information about membership, and how to create an online profile and take the CSM exam.
The CSM exam consists of 60 multiple-choice questions, to be answered within 60 minutes. The exam focuses on the following information (taught in the class):
  • Scrum Basics – The principles of Scrum, Scrum framework, and artifacts and roles
  • Meetings - Sprint Review, Sprint Planning Meeting, Daily Scrum, and Sprint Retrospective
  • Roles - Scrum Team, Product Owner, ScrumMaster roles and responsibilities
  • Artifacts - Product Backlog, Sprint Backlog, and Burndown charts, and how they are used
The cost of the exam is included in the cost of the ScrumMaster course. There is no exam charge for the first and subsequent attempts to pass the exam.

Certified Scrum Product Owner (CSPO)

The CSPO certification is the starting point for people who wish to fill the Product Owner role, either as their primary goal, or as a step towards other certifications.



33 comments:

moonar said...


Thanks i like your blog very much , i come back most days to find new posts like this!Good effort.I learnt it.



Agile Software Development Companies India

Anonymous said...

I really appreciate the information shared above. It’s of great help. If someone wants to learn Online (Virtual) instructor lead live training in Scrum TECHNOLOGY, kindly contact us http://www.maxmunus.com/contact
MaxMunus Offer World Class Virtual Instructor-led training on TECHNOLOGY. We have industry expert trainer. We provide Training Material and Software Support. MaxMunus has successfully conducted 100000+ pieces of training in India, USA, UK, Australia, Switzerland, Qatar, Saudi Arabia, Bangladesh, Bahrain and UAE etc.
For Demo Contact us.
Pratik Shekhar
MaxMunus
E-mail: pratik@maxmunus.com
Ph:(0) +91 9066268701
http://www.maxmunus.com/

gracylayla said...

I really appreciate information shared above on Agile Basics and Development Methodology. Thanks for sharing this information its very useful for me.

sfdc consultant said...

Hi Guys, I have all latest dumps of salesforce certification (Summer ‘17) if anyone wants you can mail me at
sfdcconsultant25@gmail.com

These are original questions from the certification exam and very useful to pass the exam.
Above 90% questions come from it
I have all latest dumps of following exams

Salesforce Administrator (ADM 201)
Salesforce Sales Cloud Consultant (CON 201)
Salesforce Service Cloud Consultant
Platform Developer I
App Builder and App builder transition exam

Good Day!

Pals said...



This post is really nice and informative. The explanation given is really comprehensive and informative..

Agile Software Development Companies India

gracylayla said...

Hello,
This post is much helpful for us. It was an excellent Tutorial to hear from you which is very useful. Thank you for sharing. Prepare to ace your Salesforce interview! Get interview-ready with this tutorial on most popular Salesforce Interview Questions and best ways to answer them.

DIAC said...

DIAC is offering Salesforce.com Training with on admin, developer, salesforce lightening, crm. Call @ +919310096831 for details on course fees, syllabus, placement facilities, batch timings, course duration.

radha said...

Nice .good concept in BA Online Course

gracylayla said...

Nice post

Unknown said...

thank you for nice content,it helps all biginners,
regarding,
Sales force training
Sales force training in Hyderabad
Sales force online training in Hyderabad
best Sales force training institutes in Hyderabad

Rstrainings said...

Thank you for sharing such a great article and unique content.
Sales force training in Hyderabad
Sales force training in Madhapur
Sales force training in USA

Unknown said...

Great share on Salesforce development. Thanks for this useful post. I love reading technology based blogs. I have read my blogs based on salesforce for nonprofit. I liked your blog as well.

scoot said...

THANK YOU FOR THE INFORMATION .HI GUYS IF YOU SEARCHING FOR software application development services


PLEASE VISIT US
software application development services



gopipatel said...

most wonderfull Article, Thanks for sharing!
10 Scrum Developer Best Practices Everyone

World Of Agile said...
This comment has been removed by the author.
World Of Agile said...

Thank a lot for this post that was very interesting. Keep posting like those amazing posts, this is really awesome :)

Looking for Scrum Master Certification, Visit on:
CSM Training
Scrum Certification Mumbai
CSM Training in Pune
CSM Delhi
CSM Certification Kolkata

Looking for CSPO Certification, Visit on:
Product Owner Certification
CSPO Certification Pune
CSPO Certification Bangalore
CSPO Certification Mumbai
CSPO Certification Delhi

Anu said...


Nice Post Please Keep Posting Like This On Regular Basis. Here are some use full links
DevOps Training in Bangalore | Certification | Online Training Course institute | DevOps Training in Hyderabad | Certification | Online Training Course institute | DevOps Training in Coimbatore | Certification | Online Training Course institute | DevOps Online Training | Certification | Devops Training Online

Nathan Duference said...

Excellent read, Positive site, I have read a few of the articles on your website now, and I really like your style.
Thanks a million and please keep up the effective work and also get to know about best Salesforce Development Company

Madanswer Ask Anything said...

Hello,
This post is much helpful for us. It was an excellent Tutorial to hear from you which is very useful. Thank you for sharing. Prepare to ace your Salesforce interview ! Get interview-ready with this tutorial on most popular

Madanswer Ask Anything said...

Hello,
This post is much helpful for us. It was an excellent Tutorial to hear from you which is very useful. Thank you for sharing. Prepare to ace your Agileinterview ! Get interview-ready with this tutorial on most popular

Madanswer Ask Anything said...

Hello,
This post is much helpful for us. It was an excellent Tutorial to hear from you which is very useful. Thank you for sharing. Prepare to ace your JIRA interview ! Get interview-ready with this tutorial on most popular

Madanswer Ask Anything said...

Hello,
This post is much helpful for us. It was an excellent Tutorial to hear from you which is very useful. Thank you for sharing. Prepare to ace your Devops interview ! Get interview-ready with this tutorial on most popular

Madanswer Ask Anything said...

Hello,
This post is much helpful for us. It was an excellent Tutorial to hear from you which is very useful. Thank you for sharing. Prepare to ace your Continuous integration interview ! Get interview-ready with this tutorial on most popular

Rajani said...

Good information. Agile Development Services

coMAKEIT said...

Thank You for this wonderful and much required information in this post.
Agile Devops Services in UK

kalaivaanan said...

Great Content. It will useful for knowledge seekers. Keep sharing your knowledge through this kind of article.
CSM Certification in Chennai
CSM Certification in Bangalore
CSM Certification Online
Scrum Master Certification Pune

MindCypress said...

Nice post, thanks for sharing...!!


Complex Product Owner Scrum Training has been simplified by MindCypress. We offer Product Owner Scrum Training through three main methods that conveniently adjusts to your lifestyle. Our modules are framed keeping in mind the latest trends and topics of the industry.

Unknown said...

This post is so interactive and informative.keep update more information...
devops training in mumbai
devops training in kolkata

rioraj said...

This post is so interactive and informative.keep updating more information...
aws training in mumbai
aws training in kochi
aws training in trivandrum

MindCypress said...

Nice post, thanks for sharing...!!

Agile Scrum Master online certification is one of the most in demand professional courses. At MindCypress, our goal is provide quality education to professionals who want to grow in their field. Our module is designed by subject matter experts that have been in the industry from ages. Get in touch with our consultants to clarify all the doubts that you have in mind.

robin said...

Thanks for sharing this Informative content. Well explained. Got to learn new things from your Blog.
Choose ACAP, the top-rated Salesforce development company for small businesses. ACAP’s certified Salesforce developer consultants specialize in customization, migration and integration of award-winning, affordable solutions.

Ashwini said...

nice informative post. Thanks you for sharing.
We are an experienced team in one of the Best software company and product specialist for software development and implementation. Sovereign provides Website Design, Wordpress Development and Mobile App Development, Digital marketing and SEO Services.
Wordpress Development
Agile Development

MindCypress said...

Nice post, thanks for sharing...!!

Every business needs an established Agile Scrum Team in order to delivery satisfactory products and services to the clients. Eliminate errors and reduce the cost of production with the help of Agile Scrum Methodologies. Host an
 Agile Scrum Certification Training for your personal growth or the employees in the team. Want to know more about the training?

Post a Comment

 
| ,