55
Partner Enablement Cloud Journey Webinar Series - Post Sales Track Agile Development and Implementation Gil Shaham Director, Post-Sales Enablement [email protected] James Burns Solution Architect Senior Director [email protected]

The World of Agility

Embed Size (px)

Citation preview

Page 1: The World of Agility

Partner EnablementCloud Journey Webinar Series - Post Sales Track

Agile Development and Implementation

Gil ShahamDirector, Post-Sales Enablement

[email protected]

James BurnsSolution Architect Senior Director [email protected]

Page 2: The World of Agility

▪ Cloud Journey is specifically available to our Salesforce Reseller Partner Community as an additional learning resource.

▪ Join these sessions to learn more about business with Salesforce and have an opportunity to hear best practices across key topics: Sales & Pre Sales, Post Sales and Customer Success.

Cloud Journey Webinar SeriesOngoing Enablement Series across the customer lifecyle

ACCESS: Registration Link

Registration: http://go.pardot.com/l/232132/2016-09-28/7bf

Page 3: The World of Agility

The World of AgilityAlign your Business and IT

James BurnsSenior Director and Solution Architect, Customer SuccessOffice of [email protected]

Page 4: The World of Agility

Statement under the Private Securities Litigation Reform Act of 1995:

This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.

The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.

Forward-Looking Statements

Page 5: The World of Agility

Key Elements of a Salesforce Governance Framework• Center of Excellence (CoE)

The process of managing governance.

• Change ManagementThe process of managing the overall program or project lifecycle – from collecting Business requirements to moving code from development through production.

• Org StrategyThe design and structure of the foundational “orgs” or areas where the customer’s Salesforce applications will reside and run.

• Technical GovernanceThe guiding principles for effectively developing the technical aspects of Salesforce.

Center of Excellence

Change Management

Org Strategy Technical Governance

Page 6: The World of Agility

10 Reasons to Use Agile

1. Offers a superior ROI

2. Embraces business agility

3. Reduces risk

4. Increases productivity

5. Creates a sustainable development environment

6. Enables emergent innovation

7. Builds trust and relationships

8. Expects continuous improvement

9. Inspires motivation and engagement

10. Addresses the realities of software development and the needs of Business

Page 7: The World of Agility

The World of AgilityEffects more than development

Page 8: The World of Agility

The World of Agility is a BIG Behavioural ChangeThe way the development team operate.

The way that the business operates:• Requirements.

• Release cadence.

The end users.

Page 9: The World of Agility

Agility PrinciplesTo achieve the world agility you need to embrace the following principles of the agile manifesto*:• Business and IT need to work in a partnership.

• Focus on the highest priority and continuous delivery.

• Continuous communications.

• Well balanced team with regular reviews on how to become more effective.

* http://agilemanifesto.org/principles.html

Page 10: The World of Agility

Small steps to achieve the world of AgilityDrive alignment between all stakeholders.

Break silos by driving business and IT partnership.

Apply agility principles.

Go fast and iterate by defining a regular release cadence.

Continuous Improvement.

Redefine business & IT processes to enable agility eg:• Budgeting processes.

If you achieve these steps it’s the start of your behavioural Journey

Page 11: The World of Agility

Drive Alignment• Identify all stakeholders, business and IT.

• Develop a shared vision and strategy with measurable business outcomes:

• Recommended to use the V2MOM methodology.

• Secure feedback from all stakeholders on vision and strategy:

• Iterate until agreement.

• Communicate the vision and strategy widely to all stakeholders including end users.

Page 12: The World of Agility

Business and IT PartnershipDefine clear roles and responsibilities:

• Business owns and prioritize the requirements (backlog) using:

• V2MOM.

• Value management.

• Business are involved thought the whole project lifecycle.

• IT owns the implementation.

Partnership achieves:

• Increases focus on business priorities.

• Promotes rapid response to business requirements.

• Reduces the overall backlog, since only important items are put forward.

Page 13: The World of Agility

Go Fast and IterateBreak each initiative into multiple releases and consider:

• Is the out of the box capability good enough.

• Can you define a Minimum Viable Product (MVP) approach.

• Always think 80/20 rule and leave the advanced features within the requirements to future prioritization meetings.

• At the last resort only approve items that need code.

After each release constantly secure feedback from all stakeholders including end users:

• The feedback is feed into the prioritization meetings for a future release.

This approach will need effective communication and adoption processes in-place.

Page 14: The World of Agility

Continuous ImprovementTo drive innovation you need to constantly review your processes based on:• Feedback from all stakeholders including end users and all project team members.

• Trends within the support logs.

• Trends within the project risk register.

• Project KPI’s defined within your V2MOM.

The advantages of the continuous improvement:

• Improvement in efficiency.

• Increased alignment.

• Increased business value delivered.

Page 15: The World of Agility

Budgeting processes• With traditional IT projects there is a clear beginning and ending.

• With Salesforce and the 3 releases a year, means no Salesforce solution has an ending.

• IT budgeting process traditional follow:

• Change the organization – new projects and can be capitalised (CAPEX)

• Run the organization – ongoing project support and is operating expenditure (OPEX)

• To achieve optimum value from Salesforce, it is recommended a DevOps approach is followed:

• Minor modification in your accounting processes will be required.

Page 16: The World of Agility

Development MethodologyAchieve better planning and management

Page 17: The World of Agility

Waterfall

Common Development Methodologies

Kanban

Hybrid Agile

Agile

Requirements

Architect

Develop

Test

Accept

Train

Deploy

Page 18: The World of Agility

Agileadjective: able to move quickly and easily

What is Agile and where did it come from?• In 2001, 17 software developers met

at the Snowbird ski resort in Utah for two days of discussion.

• Their goal: To find an alternative to the current “heavyweight” methods of software development.

• The result: The Manifesto for Agile Software Development.

• Agile is a balanced, yet adaptive approach to planning that can be used in many different industries.

Page 19: The World of Agility

The Manifesto for Agile Software DevelopmentWe 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

Learn more about the Agile Manifesto

Page 20: The World of Agility

The 12 Principles of Agile Software

1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity — the art of maximizing the amount of work not done — is essential.

11. The best architectures, requirements, and designs emerge from self-organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Learn more about the Agile Manifesto

Business people and developers must work together daily throughout the project.

Page 21: The World of Agility

This Isn’t AgileYou may gain speed in the short term, but you’ll pay a higher cost for it over time

• Rapid coding without design

• No planning

• Poor quality

• Compressing the schedule

• No documentation

• Making changes at any time

• Developer approach of “We’ll fix that later”

• Constantly delaying the schedule

Page 22: The World of Agility

Waterfall or Scrum?

Waterfall Scrum

• Aligns to the initial plan

• Assumes we know everything up front

• Avoids change when possible

• Delivers the full value when the project is completed

• Plans by adaptation

• Maximizes learning as you go

• Encourages change throughout the process

• Delivers value in increments

Requirements

Architect

Develop

Test

Accept

Train

Deploy

Page 23: The World of Agility

The Value of Agile

Agile Deployment

Ben

efit

Pote

ntia

l100%

Time

Traditional Implementation Traditional Deployment Maturation

Agile Implementation

Page 24: The World of Agility

ScrumLearn the benefits and get an overview

Page 25: The World of Agility

Scrum

Overview Roles and Structure Artifacts and Events Output

What is Scrum?

What are the benefits of Scrum?

What is the Scrum framework?

Product Owner

Development team

Scrum master

Sprint

Sprint planning

Daily stand-up

Sprint review

Sprint retrospective

Sprint artifacts

Understand the Scrum methodology.

=++

Page 26: The World of Agility

What Is Scrum?

• Scrum is a simple framework that can be used to manage projects such as a Salesforce development project.

• The goal of Scrum is to deliver the highest business value in the shortest amount of time.

• Here’s how it works:

• The business sets the work requirements and priorities for its development team(s).

• The development team works in organized amounts of time — called sprints — to deliver the project. A sprint is usually one to four weeks long.

• A user story is a set of work requirements.

• The product backlog is a list of user stories in order of priority.

• The development team self-organizes to decide on the best way to deliver features in order of highest priority.

Note: Scrum is not a replacement for good project management.

Page 27: The World of Agility

The Benefits of Scrum

• Sets a strong foundation for product iteration and agility

• Improves insights into business risks and rewards

• Helps you make project adjustments with minimal investment

• Helps you identify and quantify project requirements

• Tracks individual productivity with daily meetings

• Improves overall productivity

• Reduces overhead in process and management

• Helps teams focus on delivering within a set timeframe

Page 28: The World of Agility

The Scrum Framework

Roles Activities Artifacts

• Scrum master

• Product owner

• Development team

• Product backlog

• Scrum backlog

• Sprint burndown chart

• Release burndown chart

• Sprint planning

• Daily Scrum meeting

• Sprint review

• Retrospective

Page 29: The World of Agility

The Scrum Team

• The Scrum team consists of a:

• Product owner (From the Business)

• Development team

• Scrum master

• Scrum teams are self-organized.

• The team model is designed to optimize flexibility, creativity,and productivity.

• Scrum teams deliver in stages, with maximum opportunities for feedback.

• In the Scrum approach, a working product is always available.

Page 30: The World of Agility

Write a User StoryBridge the communication gap

Page 31: The World of Agility

Traditional Requirements: Language ObstacleThe challenge with traditional requirements is that Business and developers speak different languages.

Business End UserDevelopment Team

?result = base10Num

+ result; assert all0sAnd1s(result);

What’s the best way to protect the data

from fraud?

Page 32: The World of Agility

User Stories: The SolutionUser stories bridge the communication gap by capturing requirements in the language of the Business end user.

Business End UserDevelopment Team

User Story

Page 33: The World of Agility

What Is a User Story?

“As a [persona], I want to [do something] so that I can [derive a benefit].”

• Persona: Business end user

• Do something: The action the user wants to do or achieve

• Derive a benefit: The value that the user will achieve by doing the action

“As [who] [when] [where], I [what] because [why].”

• Who: Usually, this is the type of user

• What: What the user in the [who] is going to do

• When: May describe a time or date or relative time

• Where: Where the user is on the page or in the application

• Why: What triggered the user’s actions

Page 34: The World of Agility

Who Benefits From Quality User Stories?

User Interface

Design

Business AnalystDesign and Prioritization

Quality AssuranceValidation

Program Management

Planning

User Stories

Product Owner Prioritization

DevelopmentExecution

Page 35: The World of Agility

User Stories

A user story represents a small piece of business value that a team can deliver in an iteration. While traditional requirements (like use cases) try to be as detailed as possible, a user story is defined incrementally and in three stages:

• The brief description of the need

• The conversation that happens during iteration planning to nail down the details

• The tests that confirm the story's satisfactory completion

“As a [persona], I want to [do something] so that I can [derive a benefit].”

Page 36: The World of Agility

Breadth Before Depth

Best practices for user stories:

• When creating user stories, capture the major stories at a high level before moving on to detailed notes, acceptance criteria, and so on.

Note: Think of it as taking multiple passes through building stories.

• Avoid discussing the fine details of a user story before getting a sense of the big picture.

• Use the different methods to organize user stories by category or a bucket of work.

Method example: Use parent-child stories.

• Consider storyboarding your user stories.

STORYBOARD

Page 37: The World of Agility

Personas

Personas are:

• Designed to paint a picture of your users’ needs and characteristics

• Fictional characters whose effectiveness in projects is backed up by research*

You can use personas to:

• Help you create better products by knowing these different needs and characteristics

• Enable you to communicate ideas to stakeholders

Personas examples for a Sales Cloud project:

• Sales person

• Sales manager

• Sales executive

• Sales operations

• Inside Sales

* Frank Long. “Real or Imaginary: The effectiveness of using personas in product design.” Irish Ergonomics Review, Proceedings of the IES Conference 2009. Last modified: 2009.

Page 38: The World of Agility

Good User Stories

• Describe the “why,” which allows us to be strategic partners and not just order takers.

• Are sized to enable the project manager to do capacity planning.

• Are easily prioritized to help the client maximize the value of our work.

• Have clear acceptance criteria that help QA write effective test cases to reduce defects.

• Are written clearly to reduce the time BAs spend explaining stories to the team.

Page 39: The World of Agility

INVEST Technique

Independent The user story should be self-contained, and it should not have a dependency on other stories.

Negotiable Until the story is pulled into the sprint, the team and product owner should be able to rewrite or change the scope of the story.

Valuable The value to the “actor” or “user” should be clear once the story is completed.

Estimable The team should be able to determine the size of the story in relation to the rest of the stories in the product backlog.

Small User stories should ideally be broken down until they are able to be completed within a manageable timeframe.

Testable The information needed to test the story should be provided to the team.

Page 40: The World of Agility

Acceptance Criteria

What to know:

• Acceptance criteria represents the “definition of done” for a user story.

• When the product owner validates that a user story meets the acceptance criteria, it should be marked as “accepted.”

Acceptance criteria should be:

• Expressed clearly, in simple language the user would use and read like a user story

• Actionable and easily translated into one or more test cases

• Focused on user outcomes

Note: The criteria should state the intent but not a solution.

Page 41: The World of Agility

Types of Acceptance Criteria

Functional Nonfunctional Performance

• Identify specific functionality that must be in place to provide value to a user.

• Example: “The manager can approve employee expense reports.”

• Identify other critical elements of the user experience.

• Example: “The navigation elements are styled in accordance with the approved wires and style guide.”

• Set performance expectations, which are usually measured in terms of response times.

• Example: “Approvals are processed within five seconds.”

Page 42: The World of Agility

The Lifecycle of a User StoryThese steps take you through a user-story lifecycle

1. Receive an idea or concept (focus on “why”).

2. Gather details and questions (focus on “what”).

3. Groom larger stories into a runway (the agreed-upon set of smaller stories).

4. Determine if the story meets acceptance criteria (the contract).

5. Schedule into release.

6. Schedule into the sprint.

7. Build story functionality.

8. Demo the story.

9. Accept the story.

10. Conduct UAT.

11. Deploy the user stories into production.

Page 43: The World of Agility

What Is Grooming?It is estimated that the development team reserves 10 percent of their total capacity during each sprint to help the product owner with product backlog grooming.

A ThemeCollection of Related Stories

EPICLarge User Stories

User Stories Elaborated for the Next Release

In Development

Runway

Progressive ElaborationStories Move Up in Priority

Page 44: The World of Agility

User Stories: Bad Example

• The team doesn’t have context to build the best possible solution.

• The product owner will have a difficult time accepting completion of the story.

• The stories don’t have much meaning to the steering committee.

• The development team cannot estimate the effort.

• They are difficult to prioritize.

• The developer is unclear what to build.

• QA doesn’t know what to test or how to test.

“As an administrator, I want to set org-wide defaults.”

Page 45: The World of Agility

User Stories:

“As an administrator, I want to set org-wide defaults.”

“As an administrator, I want data to be private so that it doesn’t fall into the wrong hands.”

“As an account manager, I want my sales opportunities to be visible only to my account team, so that we satisfy the terms of our nondisclosure agreements.”

Bad Example

Better Example

Even Better Example

Page 46: The World of Agility

Problems With User-Story QualityThese situations could reduce the quality of your user stories

• The inability to size stories.

• You don’t have enough runway.

• Your velocity measurements are meaningless.

• You can’t use burndown charts to predict your end date.

• The development team, not the product owner, is forced to do demonstrations.

• Sprint planning is taking more than a couple hours.

• Daily stand-ups are taking more than 15–20 minutes.

• Stories are getting accepted well past the completion of the sprint.

• You have “phantom” defects.

• Your team does not realize the benefits of Scrum.

Page 47: The World of Agility

Summary of Impacts

Good User Stories Bad User Stories

• It’s easy to prioritize.

• It’s sizable.

• Your team is clear on what to build.

• The acceptance criteria is obvious.

• You have support for continuous QA.

• High value functionality is skipped while low value is built.

• You can’t forecast and velocity is difficult to measure.

• Developers guess at requirements. Time is wasted asking BAs for details, and the definition of “done” is unclear.

• Stories aren’t accepted, which impede the team from moving forward.

• QA is incomplete.

Result: Happy business users Result: Unsatisfied business users

Page 48: The World of Agility

Salesforce Best PracticesDiscuss Scrum for Salesforce projects

Page 49: The World of Agility

Salesforce

Let’s look at some Scrum best practices for Salesforce projects:

• The product owner needs to be from Business.

• Business needs to define “done.”

• On a technical debt sprint, you may need to re-architect the solution:

• As custom fields grow, consider creating new custom objects.

• As the volume of your data grows, consider strategies to manage the larger volume.

Page 50: The World of Agility

The Role of Business

Strategy Process Measurements Compliance

• Create the Business backlog.

• Define Business obstacles and create strategies to address them.

• Own and manage budgets.

• Define process maps.

• Evaluate existing processes.

• Map the Business process and requirements.

• Define the prioritization and decision criteria.

• Decide how to gather end-user feedback.

• Define key performance indicators (KPIs).

• Decide how to manage investments and innovation.

• Ensure that the new data architecture meets company policies.

• Decide how to manage the new changes within Business.

Page 51: The World of Agility

At the start of the Project Consider a Sprint 0Document the current architectural landscape.

Using the EPIC’s design a future state architectural.

Design and implement your SDLC process.

Agree project tooling.

Page 52: The World of Agility

SummaryDiscuss what we know now and the next steps

Page 53: The World of Agility

Remember the Salesforce Project Stages

Test

Ideas

Maintenance

Implement

Design

Page 54: The World of Agility

You need the guide rails for agility

BacklogRelease

ManagementDevelopment Process

IdeasBusiness Backlog

Sprint

Developers• Code or Configure

• Unit Test

• Migration Scripts

Testing

UserAcceptance

Testing Production

Environmental Management

Agile Methodology

Break-Fix

Page 55: The World of Agility

thank y u