SlideShare a Scribd company logo
1 of 43
Download to read offline
AEM Maxed! = Agile + Automation
Overcome three common challenges with AEM delivery
2015	
  Adobe	
  Summit	
  
	
  
Cat	
  Reusswig,	
  Senior	
  Director,	
  Web	
  Portals	
  Engineering,	
  Time	
  Warner	
  Cable	
  
Mark	
  Kelley,	
  Client	
  Services,	
  iCiDIGITAL	
  
	
  
Presentation Agenda
1. Overview three common AEM delivery challenges
2. See how Time Warner Cable has overcome each of these
challenges and evolved over the years
3. Revealing of three open-source tools for AEM being
developed by TWC and iCiDIGITAL
4. Q&A
Questions? #ici #adobesummit
Presentation Contests
First to Answer the
Question Wins.
Questions? #ici #adobesummit
Ask a Question on Twitter
#ici #adobesummit
Most Favorites by 12PM,
Thursday, wins.
Common Challenges
When Implementing AEM
1. Lack of collaboration among business, IT, and marketing
stakeholders leads to inefficiencies and possibly failure
2. Creating and scaling the AEM delivery team to serve multiple
websites and business units
3. Inadequate automation & testing focus results in poor code
quality and site experience
Questions? #ici #adobesummit
Common AEM Challenge #1
Lack of collaboration among business, IT, and
marketing stakeholders leads to inefficiencies
Questions? #ici #adobesummit
CULTURE IS KEY
A way of thinking, behaving or working
that exists in an organization
Questions? #ici #adobesummit
2012
•  1 scrum team grew to 3 teams
•  Definition of done
•  Tedious manual deploy model
•  Agile infancy, esp on business side
2013
•  3 scrum teams grew to 6 teams
•  Improved automation testing
•  Maturing agile
•  Improved continuous integration
•  Improved user story development
2014
Remained at 6 teams for
major release Humming
along…
TWC Maturation over Three Years
Questions? #ici #adobesummit
TWC Definition of Done for Development:
l  Meets acceptance criteria
l  Is deployable
l  Been tested & code reviewed
Expanded later to:
l  Test in both author & publish and multi
Devices/Browsers
l  Generally code review & test review are +2
A Philosophy We Embrace
Questions? #ici #adobesummit
The model we began with in the early days
Development
Cycle(s)
Wires / CSS
Comps User Stories
CQ5
Components
Enhancements
Testing Dev
Automation Acceptance
OS /
Browsers Bug Fixes
Production
Content
Authoring QA Updates
Roll-out Strategy Prod Support Prioritization
Future
Phases
TWC Responsibility Model (2012)
Business
Responsibility
Development
Responsibility
Troubleshooting
Shared
Responsibility
Questions? #ici #adobesummit
TWC Responsibility Model (Today)
Business
Development
Intake
E-governance
UAT
Post Production Validation
Story/Defect Prioritization
Both
Story Review
Requirements/Design (Create Stories)
Backlog Management
eCommerce Priority Review
Sprint Planning
Mid-Sprint Demo
Sprint Closure
Daily Stand-up
Scrum of Scrums
Tasking
Dev / Test / CI
Production Release
Sprint Retro
Beta Release
Architecture
How and Why
DOTs Handoff
UAT Handoff
Go/No-Go
2-Week Sprint
Questions? #ici #adobesummit
– External and internal requests use Podio Request Form
- New requests are reviewed weekly
-  Request includes
l  Categories (for routing request to appropriate team)
l  Description of effort
l  Justification for effort
l  High level deliverables and requirements
l  Requested release dates
-  Request processes
l  Requests for content authoring directed to Authoring Team
(no development necessary).
l  Requests for new functionality, features or projects are directed
to eGovernance team for review and prioritization.
l  Project status and details are tracked within Podio ticket.
Product Request Intake Process & Routing
Questions? #ici #adobesummit
MVP – Minimal Viable Product, the smallest useful set of
capabilities that will meet the business need in production
Minimum Viable Product Product Vision
This came later too – and is a critical success factor now
MVP and Release Planning
Questions? #ici #adobesummit
P Purpose
O Outcomes
W What’s in it for me
E Expectations from
participants
R Result
Understand the business problem to be addressed
Inform product backlog
ROM Difficulty (Does story need to be split. Does it roughly match
business expectations of difficulty)
Test the edges of the solution recommended: RWD, failure conditions, failure
responses, success responses, do we have a spork that would fit the need, 508
considerations, patterns for reuse
Provide a readiness evaluation to the Product Manager, UX, Author, Dev
Team, Testing, and Management so everyone knows what we’re building and
why
•  Subset of Development and Testing Team
•  Subset of Authoring Team
•  Technical Product Owners (TPOs)
•  Product Owners
Attendees:
Story Review (POWER)
Questions? #ici #adobesummit
1. Held weekly
2. Incoming stories
l  Reviewed for completeness
l  Multi-Story efforts categorized and ranked into Epic
l  Prioritized per eGovernance priority list
l  Prioritized agenda set for Story Review
3. Defect Review
l  Reviewed for duplication
l  Reviewed for reproducibility
l  Confirmed it is an Omega defect
-  If not, directed to proper team for resolution
l  Reviewed to determine there is enough detail
For the Team to work including repo steps,
Screen shots, browser version, environment, etc.
5. Cherry-Picks
l  Requested for gating or urgent issues.
Ranking, Categorization, and Review of Stories and Defects
Story Defect / Prioritization
4. Rank order prioritized within categorical groups:
l  Gating Defects (P1) – Defects which will prevent a Sprint release
l  Critical Defects (P1.5) – Defects that are critical, but will not hold
up a Sprint release
l  Prioritized Defects (P2) – Defects which are considered high
priority
l  Backlogged Defects (P3) – Defects which can remedied as
resource availability allows
l  TechPriority / TechDebt Defects - Architectural or structural defects
for prioritization by technical team =20%
Questions? #ici #adobesummit
Common AEM Challenge #2
Creating and scaling the AEM delivery team
to serve multiple websites and business units
Questions? #ici #adobesummit
Shake up the teams
~every 6 months forges
greater strength
& relationships
6 Scrum Teams
l  Volunteer Scrum Master with Double Duty
(Dev/QA)
l  Team commits to stories accepted &
pointed
l  Fibonacci pointing
l  Team Norms, responsible for DONE!
l  Generally 6 members per team
l  Embedded QA
l  Mixed geography & time zones
Team Alignment with Autonomy
Horizontal Team
l  TPO
l  DevOps
l  QA Automation
l  Analytics
l  Architecture Forum
l  How & Why Forum
Support
l  DOTS/DevOps =
Support across all environments
Questions? #ici #adobesummit
P Purpose
O Outcomes
W What’s in it for me
E Expectations from
participants
R Result
Development team discuss and commit to work for sprint
Discussion of story details and questions beyond what’s in the ticket.
Re-calibrate views of complexity for roadmap. Identify missing information.
Clarity of skillset and team availability to inform selection of work
Discussion of whether to roll or complete stories from previous sprint.
Evaluate work critically. Ownership of expected work. Share learning from
story refinement. Document decisions.
Clear picture of expected deliveries
Attendees: Scrum Team, Product Owner, Technical Product Owners, Cross functional team
Sprint Planning (POWER)
Questions? #ici #adobesummit
- Break Up Assigned Stories
•  Dissect stories/epics
•  Create as many sub-tasks as needed
•  Create investigation tasks if needed
- Collaborate As Needed
•  Contact TPO/Business with questions
•  Pull in other teams that have SMEs
•  Brainstorm on possible solutions
- Assign Work
•  Everyone should have at least 1 task
•  Stories should be worked by priority
•  Unassigned tasks get picked up as
bandwidth becomes available
Sprint Tasking
Questions? #ici #adobesummit
P Purpose
O Outcomes
W What’s in it for me
E Expectations from
participants
R Result
Expose blockers beyond individual team control
Coordination among teams
Share information across teams, received help for your groups needs, learn
from others.
Bring a summary of the blockers & risks from your SoS, as well as any
crossteam coordination needs not yet socialized
Informs risks to the sprint (business and technical)
SoS format is similar to a stand-up (short, focused on what is not yet known)
Daily Stand-Up / Scrum of Scrums (SoS)
Questions? #ici #adobesummit
P Purpose
O Outcomes
W What’s in it for me
E Expectations from
participants
R Result
Avoid the problem of sprint closure being the first time Dev team gets feedback
from the business
Confirm we are on the right path. Mid-sprint SOS with business
Early preview of functionality for business. Discuss proposed solutions and
ideas to solve problems. Potentially identify an immediate refactor candidate
(up to team whether to digest in current sprint)
Development – Share in progress on stories
Business – Have questions answered
Alignment and understanding across business and technical teams, scrum
teams.
Mid-Sprint Demo
Questions? #ici #adobesummit
P Purpose
O Outcomes
W What’s in it for me
E Expectations from
participants
R Result
Demo the agreed upon sprint work to the stakeholders
Inform progress against roadmap. Clarification on any possible
blockers or incomplete work.
Confirmation that our sprint work is “done”
Prepare to demo work and knowing sprint work is complete
The completion of the sprint
Sprint Closure
Questions? #ici #adobesummit
-  Reflect on previous sprint’s work
-  Each team executes as works best for them
-  Find out what was good, bad, or neutral
-  Approximately 1-2 hours (as needed)
-  Determine action items
-  Evaluate action items from previous sprint
-  Try to avoid repeating mistakes
-  EVERYONE PARTICIPATES
Sprint Retrospective
Questions? #ici #adobesummit
O Outcomes
W What’s in it for me
E Expectations from
participants
R Result
Share technical knowledge among technical team, across teams Get a
common sense of best practices
Document via Wiki or web links
Learn something new from others’ experiences
Don’t have to make the same review comments repeatedly
Time is not wasted by presenting information that is common or not
useful. Presented topics are documented well enough to discuss.
Developers write better code and use tools more effectively
Attendees: Developers, QA, DevOps (Technical Folks)
P Purpose
How and Why
Questions? #ici #adobesummit
“Only thing we have to fear is fear itself” FDR
•  Don’t be afraid to take a big
step/bite – we added close to
10 people at a time
•  We failed a bunch – don’t be
afraid to try, fail, and adjust
•  Do retrospectives & actually
take action
•  Create horizontal forums
•  We reorganized and added
roles – TPO, Architect,
DevOps, Tier1, ++
•  The business team is
completely different & has a
different set of roles
•  We consistently do more face-
to-face whether virtual or live
Our Approach to the AEM Unknown
Questions? #ici #adobesummit
-  Onboarding ease
-  Horizontal consistency inducement
-  Peer mentorship
-  Team acceptance
-  Team working agreements
-  Training
Critical Success Factors to
Growing the Team
Questions? #ici #adobesummit
Common AEM Challenge #3
Inadequate automation & testing focus results
In poor code quality and site experience
Questions? #ici #adobesummit
Tools used to help automate the agile
process and develop test-driven culture
Questions? #ici #adobesummit
Deploy &
Validate Environment
Deploy &
Validate Environment
Integration Tests
Integration Tests
Build Unit Tests Sonar
Build Unit Tests Sonar
Functional Test (no UI)
Functional Test (no UI)
UI Tests
(FF, IE, & Chrome)
UI Tests
(FF, IE, & Chrome)
If successful
If successful
If failure, email
Everyone!
If failure, email
DevOps
If failure, email
Everyone!
If failure, email
Everyone!
Dev/Test/Cl (CI)
If failure, email
Everyone!
Questions? #ici #adobesummit
CR
+1
Testing+1
GHE = +1 creates a culture of/for code
Questions? #ici #adobesummit
CI kicks off with developer commits
Automated JIRA Comments
Testing Directed by Jenkins
SonarQube code quality
Performance with WebPageTest
Private instance of WebPageTest (WPT) server
All Chrome UITests automatically save performance results to WPT server
Visual breakdown of all page content load times
GHE = +1 creates a culture of/for code
Questions? #ici #adobesummit
GebConfig.groovy
‘firefox’ {
driver = “firefox”
}
‘ipad’ {
driver = “org.openqa.selenium.iphone.IPhoneDriver”
}
‘android-grid’ {
driver = { new RemoteWebDriver(new URL(seleniumGridUrl),
DesiredCapabilities.android()) }
‘ie8-winXP’ {
DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
caps.setCapability(“platform”, “Windows 2003”);
caps.setCapability(“version”, “8”); caps.setCapability(“name”,
“regression-IE8-WinXP”)
driver = { new RemoteWebDriver(new URL(seleniumGridUrl), caps) }
}Specifying Tests with Spock
Technologies
Coding with Groovy
Organizing with Geb
Specifying with Spock
Directing with Jenkins
Running with Gradle
Managing with Grid2 and Vagrant
Diversifying with SaucelLabs
}Diversifying tests w SauceLabs
Windows VirtualBox images with
“vagrant up” attaches to 10 min
Local browser
Local emulator
Remote VMs
Attached to Grid
SauceLabs VM
Attached to Grid
31
Questions? #ici #adobesummit
Beta Release / UAT Handoff
- UAT Handoff
•  Review Wikis (UAT Team)
•  Meet with DOTS team (or representative)
•  Ask Questions
•  Prepare to Test
- Beta Release
•  Cut Code and Create Release Candidate
•  Deploy to Beta (Test) Environment
•  Mark tickets for handoff
•  Provide UAT Wikis
32
Questions? #ici #adobesummit
- UAT includes:
•  Functional GUI testing of planned release effort
•  Content and image verification
•  Regression testing of existing functionality
•  Responsive testing on mobile devices
•  Cross browser validation
•  Defect validation from external reporters
•  Test and Target
•  Analytic and GTM/DTM testing coordination
- New defects are logged for Story/Defect
Prioritization review
- Critical issues are tagged and escalated
for immediate review by product team
User Acceptance Testing (UAT)
33
Questions? #ici #adobesummit
- Represented Teams
•  Residential
•  Checkout
•  Offer Configuration
•  Authoring
•  UAT
•  Analytics
•  GTM / DTM
•  Test & Target
Are we all on-board?
Go / No-Go
- Final release sign-off from all impacted
teams
- Review of UAT status
•  Confirm all tickets tested and status
•  Review impact of any defects being released
•  Confirm all gating issues resolved
34
Questions? #ici #adobesummit
What is AppDynamics?
An application performance management software
What does it for?
Designed to help dev and ops troubleshoots problems in
complex production app
Key Benefits
-Get complete visibility into application performance
-Monitoring business Transaction in real time
-Set up proactive alerting to find problems before they
Hurt your business
-Fix problem faster than ever before.
Any build to any environment
Relic / Artifactory
Artifactory is a Content Reponsitory which, uses the Apache Jackrabbit
implementation. This natural compatibility makes it extremely easy to manage
fully-indexed and searchable metadata
Versions stored in artifactory
Automatic Confluence updates – which code is where
Push Button Environment Deploys
DevOps
-Ever try to sift through log files across multiple servers trying to find an
individual error or a trend of errors?
-Splunk presents all your data from multiple sources and makes it available
from a single location, making it easy to search for patterns.
-Some of the things that we have leveraged splunk for:
l  We Detecting Dos attack occurring on our rr.com site
l  Used it for various analytics to learn about our customers
l  Used if for capacity planning and finding load balancing problems.
l  We have identified code defects by trending errors
l  and many many more...
Puppet is IT automation software that help system
administrators manage infrastructure throughout its
lifecycle, from provisioning and configuration to
orchestration and reporting. Using Puppet, you can
easily automate repetitive tasks, quickly deploy critical
applications, and proactively manage changes,
scaling from 10s of servers to 1000s, on-premise
or in the cloud.
35
Production Release / DOTS Handoff
- DOTS Handoff
•  Meet with New DOTS teams
•  Relay any issues that are unresolved
•  Note any Gotchas or Pitfalls
•  Update Wiki
- Production Release
•  Cut Code
•  Prepare Beta Environments for Test
•  Handle Beta and Prod Issues
•  Deploy Release
•  Provide DOTS Handoff
36
Questions? #ici #adobesummit
Did it work as expected?
Post Production Validation
- Validating tickets includes
•  Tickets included in the release are working as expected
•  Mini regression confirming core functionality is working as expected (not a full
regression suite)
•  Mini browser compatibility and device testing suite
•  Validation of production content per copy decks (testing environment uses non-
confirmed contents)
•  Offer validation
- New defects are logged for Story / Defect Prioritization review
- Critical issues are tagged and escalated for immediate review by
production team
37
Questions? #ici #adobesummit
38
Some Coming Open Source Attractions J
Questions? #ici #adobesummit
Questions? #ici #adobesummit
Grabbit
Provide a fast and reliable way of copying content from
one Sling (specifically Adobe CQ / AEM) instance to
another.
https://github.com/TWCable/grabbit
Questions? #ici #adobesummit
CQ Gradle Plug-ins
A number of plugins to make it easer to work with
Adobe AEM from Gradle (Gradle.org), including CQ
Package, SCR, Sling Bundle, and Bundlor.
https://github.com/TWCable/cq-gradle-plugin
Questions? #ici #adobesummit
Jackalope
An in-memory implementation of the JCR with stubbing
capabilities for Apache Sling, better enabling unit
testing of JCR representations with complex objects
and structures.
https://github.com/TWCable/jackalope
Questions? #ici #adobesummit
Questions
2015 Adobe Summit
Cat Reusswig, TWC & Mark Kelley, iCiDIGITAL
Questions? #ici #adobesummit

More Related Content

What's hot

Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testingKMS Technology
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOpsKMS Technology
 
Test Automation With Cucumber JVM, Selenium, and Mocha
Test Automation With Cucumber JVM, Selenium, and MochaTest Automation With Cucumber JVM, Selenium, and Mocha
Test Automation With Cucumber JVM, Selenium, and MochaSalesforce Developers
 
Continuous Integration In The Cloud Final (1)
Continuous Integration In The Cloud Final (1)Continuous Integration In The Cloud Final (1)
Continuous Integration In The Cloud Final (1)Alexis Williams
 
How HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps PracticesHow HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps PracticesAtlassian
 
Beyond Agile and DevOps: From Concepts to Products in Weeks, Not Months
Beyond Agile and DevOps: From Concepts to Products in Weeks, Not MonthsBeyond Agile and DevOps: From Concepts to Products in Weeks, Not Months
Beyond Agile and DevOps: From Concepts to Products in Weeks, Not MonthsAtlassian
 
Cloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One StyleCloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One StyleMark Andersen
 
Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017Mark Andersen
 
Product! - The road to production deployment
Product! - The road to production deploymentProduct! - The road to production deployment
Product! - The road to production deploymentFilippo Zanella
 
Introduction to DevOps and Kanban
Introduction to DevOps and KanbanIntroduction to DevOps and Kanban
Introduction to DevOps and KanbanYuval Yeret
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance TestingAnand Bagmar
 
Continuous integration in large programs
Continuous integration in large programsContinuous integration in large programs
Continuous integration in large programsNaveen Kumar Singh
 
Tear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the BuildingTear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the BuildingAtlassian
 
DevOps Requires Continuous Testing – it’s Not Negotiable!
DevOps Requires Continuous Testing – it’s Not Negotiable!DevOps Requires Continuous Testing – it’s Not Negotiable!
DevOps Requires Continuous Testing – it’s Not Negotiable!Neotys
 
Accelerated Mobile Pages
Accelerated Mobile PagesAccelerated Mobile Pages
Accelerated Mobile PagesJeremy Green
 
How to Build a Better JIRA Add-on
How to Build a Better JIRA Add-onHow to Build a Better JIRA Add-on
How to Build a Better JIRA Add-onAtlassian
 

What's hot (20)

Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testing
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
 
Test Automation With Cucumber JVM, Selenium, and Mocha
Test Automation With Cucumber JVM, Selenium, and MochaTest Automation With Cucumber JVM, Selenium, and Mocha
Test Automation With Cucumber JVM, Selenium, and Mocha
 
AWS Simple Work Flow
AWS Simple Work FlowAWS Simple Work Flow
AWS Simple Work Flow
 
Continuous Integration In The Cloud Final (1)
Continuous Integration In The Cloud Final (1)Continuous Integration In The Cloud Final (1)
Continuous Integration In The Cloud Final (1)
 
EVOLVE'15 | Maximize | Gary Gamitian | Informatica
EVOLVE'15 | Maximize | Gary Gamitian | InformaticaEVOLVE'15 | Maximize | Gary Gamitian | Informatica
EVOLVE'15 | Maximize | Gary Gamitian | Informatica
 
How HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps PracticesHow HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps Practices
 
Beyond Agile and DevOps: From Concepts to Products in Weeks, Not Months
Beyond Agile and DevOps: From Concepts to Products in Weeks, Not MonthsBeyond Agile and DevOps: From Concepts to Products in Weeks, Not Months
Beyond Agile and DevOps: From Concepts to Products in Weeks, Not Months
 
Cloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One StyleCloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One Style
 
EVOLVE'15 | Enhance | Jakub Kaniewski | AEM Projects - To The Horizon & Beyond
EVOLVE'15 | Enhance | Jakub Kaniewski | AEM Projects - To The Horizon & BeyondEVOLVE'15 | Enhance | Jakub Kaniewski | AEM Projects - To The Horizon & Beyond
EVOLVE'15 | Enhance | Jakub Kaniewski | AEM Projects - To The Horizon & Beyond
 
Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017
 
Sexy React Stack
Sexy React StackSexy React Stack
Sexy React Stack
 
Product! - The road to production deployment
Product! - The road to production deploymentProduct! - The road to production deployment
Product! - The road to production deployment
 
Introduction to DevOps and Kanban
Introduction to DevOps and KanbanIntroduction to DevOps and Kanban
Introduction to DevOps and Kanban
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance Testing
 
Continuous integration in large programs
Continuous integration in large programsContinuous integration in large programs
Continuous integration in large programs
 
Tear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the BuildingTear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the Building
 
DevOps Requires Continuous Testing – it’s Not Negotiable!
DevOps Requires Continuous Testing – it’s Not Negotiable!DevOps Requires Continuous Testing – it’s Not Negotiable!
DevOps Requires Continuous Testing – it’s Not Negotiable!
 
Accelerated Mobile Pages
Accelerated Mobile PagesAccelerated Mobile Pages
Accelerated Mobile Pages
 
How to Build a Better JIRA Add-on
How to Build a Better JIRA Add-onHow to Build a Better JIRA Add-on
How to Build a Better JIRA Add-on
 

Viewers also liked

Commerce and Content, Together at Last
Commerce and Content, Together at LastCommerce and Content, Together at Last
Commerce and Content, Together at LastiCiDIGITAL
 
The Future of Web Apps
The Future of Web AppsThe Future of Web Apps
The Future of Web AppsiCiDIGITAL
 
Building a Great AEM Team: Time Warner Cable's Journey
Building a Great AEM Team: Time Warner Cable's JourneyBuilding a Great AEM Team: Time Warner Cable's Journey
Building a Great AEM Team: Time Warner Cable's JourneyiCiDIGITAL
 
Test Driven Development in CQ5/AEM
Test Driven Development in CQ5/AEMTest Driven Development in CQ5/AEM
Test Driven Development in CQ5/AEMSagar Sane
 
Creating Real-Time Data Mashups with Node.JS and Adobe CQ
Creating Real-Time Data Mashups with Node.JS and Adobe CQCreating Real-Time Data Mashups with Node.JS and Adobe CQ
Creating Real-Time Data Mashups with Node.JS and Adobe CQiCiDIGITAL
 
Ask the expert AEM Assets best practices 092016
Ask the expert  AEM Assets best practices 092016Ask the expert  AEM Assets best practices 092016
Ask the expert AEM Assets best practices 092016AdobeMarketingCloud
 
AEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentAEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentGabriel Walt
 
IT in Healthcare
IT in HealthcareIT in Healthcare
IT in HealthcareNetApp
 

Viewers also liked (9)

Aem maintenance
Aem maintenanceAem maintenance
Aem maintenance
 
Commerce and Content, Together at Last
Commerce and Content, Together at LastCommerce and Content, Together at Last
Commerce and Content, Together at Last
 
The Future of Web Apps
The Future of Web AppsThe Future of Web Apps
The Future of Web Apps
 
Building a Great AEM Team: Time Warner Cable's Journey
Building a Great AEM Team: Time Warner Cable's JourneyBuilding a Great AEM Team: Time Warner Cable's Journey
Building a Great AEM Team: Time Warner Cable's Journey
 
Test Driven Development in CQ5/AEM
Test Driven Development in CQ5/AEMTest Driven Development in CQ5/AEM
Test Driven Development in CQ5/AEM
 
Creating Real-Time Data Mashups with Node.JS and Adobe CQ
Creating Real-Time Data Mashups with Node.JS and Adobe CQCreating Real-Time Data Mashups with Node.JS and Adobe CQ
Creating Real-Time Data Mashups with Node.JS and Adobe CQ
 
Ask the expert AEM Assets best practices 092016
Ask the expert  AEM Assets best practices 092016Ask the expert  AEM Assets best practices 092016
Ask the expert AEM Assets best practices 092016
 
AEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentAEM Best Practices for Component Development
AEM Best Practices for Component Development
 
IT in Healthcare
IT in HealthcareIT in Healthcare
IT in Healthcare
 

Similar to Overcome-3-common-aem-delivery-challenges

Mastering Agile Practices to Build High Performing Teams
Mastering Agile Practices to Build High Performing TeamsMastering Agile Practices to Build High Performing Teams
Mastering Agile Practices to Build High Performing TeamsAgileThought
 
How To Review The Sprints Efficiently
How To Review The Sprints EfficientlyHow To Review The Sprints Efficiently
How To Review The Sprints EfficientlyLemi Orhan Ergin
 
Test team dynamics, Антон Мужайло
Test team dynamics, Антон МужайлоTest team dynamics, Антон Мужайло
Test team dynamics, Антон МужайлоSigma Software
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQASymphony
 
LeSS Like Adoption @ SAP
LeSS Like Adoption @ SAPLeSS Like Adoption @ SAP
LeSS Like Adoption @ SAPRobert Briese
 
Migrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to AvoidMigrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to AvoidVMware Tanzu
 
DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015Yuval Yeret
 
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB FeatureMongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB FeatureMongoDB
 
ADM Overview - Customers
ADM Overview - CustomersADM Overview - Customers
ADM Overview - CustomersSteve Greene
 
Adaptive Development Methodology
Adaptive Development MethodologyAdaptive Development Methodology
Adaptive Development MethodologySteve Greene
 
Agile Cafe Boulder - Panelist and keynote slides
Agile Cafe Boulder - Panelist and keynote slidesAgile Cafe Boulder - Panelist and keynote slides
Agile Cafe Boulder - Panelist and keynote slidesCloud Elements
 
Choosing the right agile approach for your organization
Choosing the right agile approach for your organizationChoosing the right agile approach for your organization
Choosing the right agile approach for your organizationInCycle Software
 
When to Code / Config / Config + Code in Salesforce - Nikunj Doshi
When to Code / Config / Config + Code in Salesforce - Nikunj DoshiWhen to Code / Config / Config + Code in Salesforce - Nikunj Doshi
When to Code / Config / Config + Code in Salesforce - Nikunj DoshiSakthivel Madesh
 
How Meark as an enterprise leverages DSDM?
How Meark as an enterprise leverages DSDM?How Meark as an enterprise leverages DSDM?
How Meark as an enterprise leverages DSDM?AgileNetwork
 
IIBA and Solvera May Event - Testing w Agile slides
IIBA and Solvera May Event - Testing w Agile slidesIIBA and Solvera May Event - Testing w Agile slides
IIBA and Solvera May Event - Testing w Agile slidesSaskatchewanIIBA
 

Similar to Overcome-3-common-aem-delivery-challenges (20)

Expo qa15 Keynote
Expo qa15 KeynoteExpo qa15 Keynote
Expo qa15 Keynote
 
Agile scrum induction
Agile scrum inductionAgile scrum induction
Agile scrum induction
 
Mastering Agile Practices to Build High Performing Teams
Mastering Agile Practices to Build High Performing TeamsMastering Agile Practices to Build High Performing Teams
Mastering Agile Practices to Build High Performing Teams
 
How To Review The Sprints Efficiently
How To Review The Sprints EfficientlyHow To Review The Sprints Efficiently
How To Review The Sprints Efficiently
 
Test team dynamics, Антон Мужайло
Test team dynamics, Антон МужайлоTest team dynamics, Антон Мужайло
Test team dynamics, Антон Мужайло
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the Enterprise
 
Agile testing
Agile testingAgile testing
Agile testing
 
software-dev-life.pptx
software-dev-life.pptxsoftware-dev-life.pptx
software-dev-life.pptx
 
LeSS Like Adoption @ SAP
LeSS Like Adoption @ SAPLeSS Like Adoption @ SAP
LeSS Like Adoption @ SAP
 
Migrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to AvoidMigrating Your Apps to the Cloud: How to do it and What to Avoid
Migrating Your Apps to the Cloud: How to do it and What to Avoid
 
DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015
 
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB FeatureMongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
 
ADM Overview - Customers
ADM Overview - CustomersADM Overview - Customers
ADM Overview - Customers
 
Outsourcing With Agile
Outsourcing With AgileOutsourcing With Agile
Outsourcing With Agile
 
Adaptive Development Methodology
Adaptive Development MethodologyAdaptive Development Methodology
Adaptive Development Methodology
 
Agile Cafe Boulder - Panelist and keynote slides
Agile Cafe Boulder - Panelist and keynote slidesAgile Cafe Boulder - Panelist and keynote slides
Agile Cafe Boulder - Panelist and keynote slides
 
Choosing the right agile approach for your organization
Choosing the right agile approach for your organizationChoosing the right agile approach for your organization
Choosing the right agile approach for your organization
 
When to Code / Config / Config + Code in Salesforce - Nikunj Doshi
When to Code / Config / Config + Code in Salesforce - Nikunj DoshiWhen to Code / Config / Config + Code in Salesforce - Nikunj Doshi
When to Code / Config / Config + Code in Salesforce - Nikunj Doshi
 
How Meark as an enterprise leverages DSDM?
How Meark as an enterprise leverages DSDM?How Meark as an enterprise leverages DSDM?
How Meark as an enterprise leverages DSDM?
 
IIBA and Solvera May Event - Testing w Agile slides
IIBA and Solvera May Event - Testing w Agile slidesIIBA and Solvera May Event - Testing w Agile slides
IIBA and Solvera May Event - Testing w Agile slides
 

Recently uploaded

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Recently uploaded (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Overcome-3-common-aem-delivery-challenges

  • 1. AEM Maxed! = Agile + Automation Overcome three common challenges with AEM delivery 2015  Adobe  Summit     Cat  Reusswig,  Senior  Director,  Web  Portals  Engineering,  Time  Warner  Cable   Mark  Kelley,  Client  Services,  iCiDIGITAL    
  • 2. Presentation Agenda 1. Overview three common AEM delivery challenges 2. See how Time Warner Cable has overcome each of these challenges and evolved over the years 3. Revealing of three open-source tools for AEM being developed by TWC and iCiDIGITAL 4. Q&A Questions? #ici #adobesummit
  • 3. Presentation Contests First to Answer the Question Wins. Questions? #ici #adobesummit Ask a Question on Twitter #ici #adobesummit Most Favorites by 12PM, Thursday, wins.
  • 4. Common Challenges When Implementing AEM 1. Lack of collaboration among business, IT, and marketing stakeholders leads to inefficiencies and possibly failure 2. Creating and scaling the AEM delivery team to serve multiple websites and business units 3. Inadequate automation & testing focus results in poor code quality and site experience Questions? #ici #adobesummit
  • 5. Common AEM Challenge #1 Lack of collaboration among business, IT, and marketing stakeholders leads to inefficiencies Questions? #ici #adobesummit
  • 6. CULTURE IS KEY A way of thinking, behaving or working that exists in an organization Questions? #ici #adobesummit
  • 7. 2012 •  1 scrum team grew to 3 teams •  Definition of done •  Tedious manual deploy model •  Agile infancy, esp on business side 2013 •  3 scrum teams grew to 6 teams •  Improved automation testing •  Maturing agile •  Improved continuous integration •  Improved user story development 2014 Remained at 6 teams for major release Humming along… TWC Maturation over Three Years Questions? #ici #adobesummit
  • 8. TWC Definition of Done for Development: l  Meets acceptance criteria l  Is deployable l  Been tested & code reviewed Expanded later to: l  Test in both author & publish and multi Devices/Browsers l  Generally code review & test review are +2 A Philosophy We Embrace Questions? #ici #adobesummit
  • 9. The model we began with in the early days Development Cycle(s) Wires / CSS Comps User Stories CQ5 Components Enhancements Testing Dev Automation Acceptance OS / Browsers Bug Fixes Production Content Authoring QA Updates Roll-out Strategy Prod Support Prioritization Future Phases TWC Responsibility Model (2012) Business Responsibility Development Responsibility Troubleshooting Shared Responsibility Questions? #ici #adobesummit
  • 10. TWC Responsibility Model (Today) Business Development Intake E-governance UAT Post Production Validation Story/Defect Prioritization Both Story Review Requirements/Design (Create Stories) Backlog Management eCommerce Priority Review Sprint Planning Mid-Sprint Demo Sprint Closure Daily Stand-up Scrum of Scrums Tasking Dev / Test / CI Production Release Sprint Retro Beta Release Architecture How and Why DOTs Handoff UAT Handoff Go/No-Go 2-Week Sprint Questions? #ici #adobesummit
  • 11. – External and internal requests use Podio Request Form - New requests are reviewed weekly -  Request includes l  Categories (for routing request to appropriate team) l  Description of effort l  Justification for effort l  High level deliverables and requirements l  Requested release dates -  Request processes l  Requests for content authoring directed to Authoring Team (no development necessary). l  Requests for new functionality, features or projects are directed to eGovernance team for review and prioritization. l  Project status and details are tracked within Podio ticket. Product Request Intake Process & Routing Questions? #ici #adobesummit
  • 12. MVP – Minimal Viable Product, the smallest useful set of capabilities that will meet the business need in production Minimum Viable Product Product Vision This came later too – and is a critical success factor now MVP and Release Planning Questions? #ici #adobesummit
  • 13. P Purpose O Outcomes W What’s in it for me E Expectations from participants R Result Understand the business problem to be addressed Inform product backlog ROM Difficulty (Does story need to be split. Does it roughly match business expectations of difficulty) Test the edges of the solution recommended: RWD, failure conditions, failure responses, success responses, do we have a spork that would fit the need, 508 considerations, patterns for reuse Provide a readiness evaluation to the Product Manager, UX, Author, Dev Team, Testing, and Management so everyone knows what we’re building and why •  Subset of Development and Testing Team •  Subset of Authoring Team •  Technical Product Owners (TPOs) •  Product Owners Attendees: Story Review (POWER) Questions? #ici #adobesummit
  • 14. 1. Held weekly 2. Incoming stories l  Reviewed for completeness l  Multi-Story efforts categorized and ranked into Epic l  Prioritized per eGovernance priority list l  Prioritized agenda set for Story Review 3. Defect Review l  Reviewed for duplication l  Reviewed for reproducibility l  Confirmed it is an Omega defect -  If not, directed to proper team for resolution l  Reviewed to determine there is enough detail For the Team to work including repo steps, Screen shots, browser version, environment, etc. 5. Cherry-Picks l  Requested for gating or urgent issues. Ranking, Categorization, and Review of Stories and Defects Story Defect / Prioritization 4. Rank order prioritized within categorical groups: l  Gating Defects (P1) – Defects which will prevent a Sprint release l  Critical Defects (P1.5) – Defects that are critical, but will not hold up a Sprint release l  Prioritized Defects (P2) – Defects which are considered high priority l  Backlogged Defects (P3) – Defects which can remedied as resource availability allows l  TechPriority / TechDebt Defects - Architectural or structural defects for prioritization by technical team =20% Questions? #ici #adobesummit
  • 15. Common AEM Challenge #2 Creating and scaling the AEM delivery team to serve multiple websites and business units Questions? #ici #adobesummit
  • 16. Shake up the teams ~every 6 months forges greater strength & relationships 6 Scrum Teams l  Volunteer Scrum Master with Double Duty (Dev/QA) l  Team commits to stories accepted & pointed l  Fibonacci pointing l  Team Norms, responsible for DONE! l  Generally 6 members per team l  Embedded QA l  Mixed geography & time zones Team Alignment with Autonomy Horizontal Team l  TPO l  DevOps l  QA Automation l  Analytics l  Architecture Forum l  How & Why Forum Support l  DOTS/DevOps = Support across all environments Questions? #ici #adobesummit
  • 17. P Purpose O Outcomes W What’s in it for me E Expectations from participants R Result Development team discuss and commit to work for sprint Discussion of story details and questions beyond what’s in the ticket. Re-calibrate views of complexity for roadmap. Identify missing information. Clarity of skillset and team availability to inform selection of work Discussion of whether to roll or complete stories from previous sprint. Evaluate work critically. Ownership of expected work. Share learning from story refinement. Document decisions. Clear picture of expected deliveries Attendees: Scrum Team, Product Owner, Technical Product Owners, Cross functional team Sprint Planning (POWER) Questions? #ici #adobesummit
  • 18. - Break Up Assigned Stories •  Dissect stories/epics •  Create as many sub-tasks as needed •  Create investigation tasks if needed - Collaborate As Needed •  Contact TPO/Business with questions •  Pull in other teams that have SMEs •  Brainstorm on possible solutions - Assign Work •  Everyone should have at least 1 task •  Stories should be worked by priority •  Unassigned tasks get picked up as bandwidth becomes available Sprint Tasking Questions? #ici #adobesummit
  • 19. P Purpose O Outcomes W What’s in it for me E Expectations from participants R Result Expose blockers beyond individual team control Coordination among teams Share information across teams, received help for your groups needs, learn from others. Bring a summary of the blockers & risks from your SoS, as well as any crossteam coordination needs not yet socialized Informs risks to the sprint (business and technical) SoS format is similar to a stand-up (short, focused on what is not yet known) Daily Stand-Up / Scrum of Scrums (SoS) Questions? #ici #adobesummit
  • 20. P Purpose O Outcomes W What’s in it for me E Expectations from participants R Result Avoid the problem of sprint closure being the first time Dev team gets feedback from the business Confirm we are on the right path. Mid-sprint SOS with business Early preview of functionality for business. Discuss proposed solutions and ideas to solve problems. Potentially identify an immediate refactor candidate (up to team whether to digest in current sprint) Development – Share in progress on stories Business – Have questions answered Alignment and understanding across business and technical teams, scrum teams. Mid-Sprint Demo Questions? #ici #adobesummit
  • 21. P Purpose O Outcomes W What’s in it for me E Expectations from participants R Result Demo the agreed upon sprint work to the stakeholders Inform progress against roadmap. Clarification on any possible blockers or incomplete work. Confirmation that our sprint work is “done” Prepare to demo work and knowing sprint work is complete The completion of the sprint Sprint Closure Questions? #ici #adobesummit
  • 22. -  Reflect on previous sprint’s work -  Each team executes as works best for them -  Find out what was good, bad, or neutral -  Approximately 1-2 hours (as needed) -  Determine action items -  Evaluate action items from previous sprint -  Try to avoid repeating mistakes -  EVERYONE PARTICIPATES Sprint Retrospective Questions? #ici #adobesummit
  • 23. O Outcomes W What’s in it for me E Expectations from participants R Result Share technical knowledge among technical team, across teams Get a common sense of best practices Document via Wiki or web links Learn something new from others’ experiences Don’t have to make the same review comments repeatedly Time is not wasted by presenting information that is common or not useful. Presented topics are documented well enough to discuss. Developers write better code and use tools more effectively Attendees: Developers, QA, DevOps (Technical Folks) P Purpose How and Why Questions? #ici #adobesummit
  • 24. “Only thing we have to fear is fear itself” FDR •  Don’t be afraid to take a big step/bite – we added close to 10 people at a time •  We failed a bunch – don’t be afraid to try, fail, and adjust •  Do retrospectives & actually take action •  Create horizontal forums •  We reorganized and added roles – TPO, Architect, DevOps, Tier1, ++ •  The business team is completely different & has a different set of roles •  We consistently do more face- to-face whether virtual or live Our Approach to the AEM Unknown Questions? #ici #adobesummit
  • 25. -  Onboarding ease -  Horizontal consistency inducement -  Peer mentorship -  Team acceptance -  Team working agreements -  Training Critical Success Factors to Growing the Team Questions? #ici #adobesummit
  • 26. Common AEM Challenge #3 Inadequate automation & testing focus results In poor code quality and site experience Questions? #ici #adobesummit
  • 27. Tools used to help automate the agile process and develop test-driven culture Questions? #ici #adobesummit
  • 28. Deploy & Validate Environment Deploy & Validate Environment Integration Tests Integration Tests Build Unit Tests Sonar Build Unit Tests Sonar Functional Test (no UI) Functional Test (no UI) UI Tests (FF, IE, & Chrome) UI Tests (FF, IE, & Chrome) If successful If successful If failure, email Everyone! If failure, email DevOps If failure, email Everyone! If failure, email Everyone! Dev/Test/Cl (CI) If failure, email Everyone! Questions? #ici #adobesummit
  • 29. CR +1 Testing+1 GHE = +1 creates a culture of/for code Questions? #ici #adobesummit
  • 30. CI kicks off with developer commits Automated JIRA Comments Testing Directed by Jenkins SonarQube code quality Performance with WebPageTest Private instance of WebPageTest (WPT) server All Chrome UITests automatically save performance results to WPT server Visual breakdown of all page content load times GHE = +1 creates a culture of/for code Questions? #ici #adobesummit
  • 31. GebConfig.groovy ‘firefox’ { driver = “firefox” } ‘ipad’ { driver = “org.openqa.selenium.iphone.IPhoneDriver” } ‘android-grid’ { driver = { new RemoteWebDriver(new URL(seleniumGridUrl), DesiredCapabilities.android()) } ‘ie8-winXP’ { DesiredCapabilities caps = DesiredCapabilities.internetExplorer(); caps.setCapability(“platform”, “Windows 2003”); caps.setCapability(“version”, “8”); caps.setCapability(“name”, “regression-IE8-WinXP”) driver = { new RemoteWebDriver(new URL(seleniumGridUrl), caps) } }Specifying Tests with Spock Technologies Coding with Groovy Organizing with Geb Specifying with Spock Directing with Jenkins Running with Gradle Managing with Grid2 and Vagrant Diversifying with SaucelLabs }Diversifying tests w SauceLabs Windows VirtualBox images with “vagrant up” attaches to 10 min Local browser Local emulator Remote VMs Attached to Grid SauceLabs VM Attached to Grid 31 Questions? #ici #adobesummit
  • 32. Beta Release / UAT Handoff - UAT Handoff •  Review Wikis (UAT Team) •  Meet with DOTS team (or representative) •  Ask Questions •  Prepare to Test - Beta Release •  Cut Code and Create Release Candidate •  Deploy to Beta (Test) Environment •  Mark tickets for handoff •  Provide UAT Wikis 32 Questions? #ici #adobesummit
  • 33. - UAT includes: •  Functional GUI testing of planned release effort •  Content and image verification •  Regression testing of existing functionality •  Responsive testing on mobile devices •  Cross browser validation •  Defect validation from external reporters •  Test and Target •  Analytic and GTM/DTM testing coordination - New defects are logged for Story/Defect Prioritization review - Critical issues are tagged and escalated for immediate review by product team User Acceptance Testing (UAT) 33 Questions? #ici #adobesummit
  • 34. - Represented Teams •  Residential •  Checkout •  Offer Configuration •  Authoring •  UAT •  Analytics •  GTM / DTM •  Test & Target Are we all on-board? Go / No-Go - Final release sign-off from all impacted teams - Review of UAT status •  Confirm all tickets tested and status •  Review impact of any defects being released •  Confirm all gating issues resolved 34 Questions? #ici #adobesummit
  • 35. What is AppDynamics? An application performance management software What does it for? Designed to help dev and ops troubleshoots problems in complex production app Key Benefits -Get complete visibility into application performance -Monitoring business Transaction in real time -Set up proactive alerting to find problems before they Hurt your business -Fix problem faster than ever before. Any build to any environment Relic / Artifactory Artifactory is a Content Reponsitory which, uses the Apache Jackrabbit implementation. This natural compatibility makes it extremely easy to manage fully-indexed and searchable metadata Versions stored in artifactory Automatic Confluence updates – which code is where Push Button Environment Deploys DevOps -Ever try to sift through log files across multiple servers trying to find an individual error or a trend of errors? -Splunk presents all your data from multiple sources and makes it available from a single location, making it easy to search for patterns. -Some of the things that we have leveraged splunk for: l  We Detecting Dos attack occurring on our rr.com site l  Used it for various analytics to learn about our customers l  Used if for capacity planning and finding load balancing problems. l  We have identified code defects by trending errors l  and many many more... Puppet is IT automation software that help system administrators manage infrastructure throughout its lifecycle, from provisioning and configuration to orchestration and reporting. Using Puppet, you can easily automate repetitive tasks, quickly deploy critical applications, and proactively manage changes, scaling from 10s of servers to 1000s, on-premise or in the cloud. 35
  • 36. Production Release / DOTS Handoff - DOTS Handoff •  Meet with New DOTS teams •  Relay any issues that are unresolved •  Note any Gotchas or Pitfalls •  Update Wiki - Production Release •  Cut Code •  Prepare Beta Environments for Test •  Handle Beta and Prod Issues •  Deploy Release •  Provide DOTS Handoff 36 Questions? #ici #adobesummit
  • 37. Did it work as expected? Post Production Validation - Validating tickets includes •  Tickets included in the release are working as expected •  Mini regression confirming core functionality is working as expected (not a full regression suite) •  Mini browser compatibility and device testing suite •  Validation of production content per copy decks (testing environment uses non- confirmed contents) •  Offer validation - New defects are logged for Story / Defect Prioritization review - Critical issues are tagged and escalated for immediate review by production team 37 Questions? #ici #adobesummit
  • 38. 38 Some Coming Open Source Attractions J Questions? #ici #adobesummit
  • 40. Grabbit Provide a fast and reliable way of copying content from one Sling (specifically Adobe CQ / AEM) instance to another. https://github.com/TWCable/grabbit Questions? #ici #adobesummit
  • 41. CQ Gradle Plug-ins A number of plugins to make it easer to work with Adobe AEM from Gradle (Gradle.org), including CQ Package, SCR, Sling Bundle, and Bundlor. https://github.com/TWCable/cq-gradle-plugin Questions? #ici #adobesummit
  • 42. Jackalope An in-memory implementation of the JCR with stubbing capabilities for Apache Sling, better enabling unit testing of JCR representations with complex objects and structures. https://github.com/TWCable/jackalope Questions? #ici #adobesummit
  • 43. Questions 2015 Adobe Summit Cat Reusswig, TWC & Mark Kelley, iCiDIGITAL Questions? #ici #adobesummit

Editor's Notes

  1. Added analytics first. Buisness team is completely different than when it started.
  2. Provide a fast and reliable way of copying content from one Sling (specifically Adobe CQ/AEM) instance to another.
  3. The CQ Plugins for Gradle has a number of plugins to make it easier to work with Adobe CQ from Gradle (gradle.org).
  4. Jackalope is an in-memory implementation of the JCR with stubbing capabilities for Apache Sling. The goal of Jackalope is to better enable unit testing of JCR representations with complex objects structures. Java objects can normally be simply represented in the JCR as nodes with properties.