SlideShare a Scribd company logo
1 of 34
Download to read offline
IMPACT
ANALYSIS
CHRISLEMA | CROWDFAVORITE
This  is  a  story  that  bears  strong  resemblance  to  a  real  
project.  I  can’t  tell  you  the  details  but  I  can  tell  you  
enough  of  it  to  make  it  useful  as  a  story.  I’ll  protect  the  
innocent.  Oh	
  wait,	
  there	
  were	
  no	
  innocents.	
  
CAN I TELL YOU A STORY?
PERFECT
CLIENT
BUILD  THE  
SOLUTION
DESIGN  THE  
SOLUTION
RECIEVE  THE  
REQUIREMENTS
GO  THROUGH  THE  
SECOND  ROUND  
OF  SAME  PHASE
NO	
  
YES	
  
TEST  &  SHOW  
THE  CLIENT
release
start  of  iteraPon
THEWAYIT’SSUPPOSEDTOWORK
LARGE
CLIENT
BUILD  THE  
SOLUTION
DESIGN  THE  
SOLUTION
RECIEVE  THE  
REQUIREMENTS
YES.  WE  KNOW  
WHO  YOU  ARE.
OK.  WE’RE  ON  IT.
NO	
  
WAIT!  LET’S  
ADD  NEW  
SCOPE
TEST  &  SHOW  
THE  CLIENT
WHATHAPPENSWHEN...
THE DANGER ZONE
The  porPon  of  a  project  where  all  your  profit  disappears  
and  you’re  wondering  how  you  got  here  in  the  first  place.
HOPE
ACTUAL
SOW  
 DEVELOPMENT  &  QA
DISCOVERY
LAUNCH
Jan
 Feb
 Mar
 Apr
 May
 Jun
 Jul
 Aug
 Sep
 Oct
 Nov
 Dec
 Jan
 Feb
 Mar
 Apr
 May
 Jun
 Jul
 Aug
 Sep
2014
 2015
THE PROJECT TIMELINE TELLS THE STORY
SOW
 DEVELOPMENT
DISCOVERY
SOW  &  CONTRACTS  
 DEVELOPMENT
DISCOVERY
LAUNCH
PARTNER  API  IS  A  WORK  IN  PROGRESS
DANGER ZONE
CLIENTS
ARE IDEA
FACTORIES
You  can’t  blame  a  client  for  having  a  lot  of  
new  ideas  when  they  can  finally  interact  
with  the  system  they’ve  been  paying  for.
DEVELOPERS
GET EASILY
ANCHORED
We  o]en  get  locked  in  on  the  original  statement  
of  work  -­‐  and  the  tasks  we  created  based  on  
them.  Even  if  a  client  has  to  adjust  course.
THE
TRUTH:
THE PROBLEM
ISN’T CLIENTS
& IT’S NOT
DEVELOPERS
THE PROJECT BY THE NUMBERS
# OF COMMITS
# OF
CONTRIBUTORS
# OF MONTHS
4461 12 8
THE PROBLEM IS OUR
BRAIN & MEMORY
0% The number of staff we have that have perfect
memory and can do impact analysis in their sleep.
IMPACT ANALYSIS
The  work  that  must  be  done  when  a  client  
requests  new  work  (new  scope)  and  it  must  be  
determined  what  the  changes  will  do  (what  
impact  they’ll  have)  on  exisPng  code.


HINT:	
  IT’S	
  REALLY	
  HARD	
  TO	
  DO.	
  
HOW DO YOU MAKE CHOICES WHEN
YOU WRITE CODE?
Idea
Insight
CODE
CODE
 CODE
Talk
Talk
Talk
Choice
 Choice
Choice
If  you  noPce  the  
performance  isn’t  
great,  maybe  you  
try  a  new  approach.
Seeing  someone  
else’s  code  helps  you  
think  about  your  own  
in  a  new  way.
New  informaPon  
suggests  you  
thought  about  it  all  
wrong.  Which  leads  
to  changes  in  your  
code.
LET ME MAKE A GUESS. YOU DON’T WRITE THIS ALL DOWN. I NEVER DID.	
  
 	
  
NOTACHANGEORDERISSUE
NOT  A  MONEY  ISSUE.  IT’S  ABOUT  RISK  MITIGATION.
THE DANGER ZONE
The  place  where  you  break  your  own  code  and  can’t  
charge  anyone  else  because  it’s  your  mistake.
HOPE
ACTUAL
SOW  
 DEVELOPMENT  &  QA
DISCOVERY
LAUNCH
Jan
 Feb
 Mar
 Apr
 May
 Jun
 Jul
 Aug
 Sep
 Oct
 Nov
 Dec
 Jan
 Feb
 Mar
 Apr
 May
 Jun
 Jul
 Aug
 Sep
2014
 2015
WE CREATED CHANGE ORDERS FOR NEW WORK...
SOW
 DEVELOPMENT
DISCOVERY
SOW  &  CONTRACTS  
 DEVELOPMENT
DISCOVERY
LAUNCH
PARTNER  API  IS  A  WORK  IN  PROGRESS
DANGER ZONE
Everything, which is done orderly,
with measure and according to
rules, generates something good.
Plato
This  is  another  story.  It’s  what  turned  me  
onto  automated	
  impact	
  analysis	
  thru  
acceptance  tesPng.	
  
CAN I TELL YOU A STORY?
The  trading  engine  for  
market  makers  was  a  
message-­‐oriented	
  soluEon	
  
that  was  having  
performance  issues.
	
  
No  one  thought  about  
gridlock  because  no	
  one	
  
thought	
  about	
  the	
  big	
  
picture.	
  
PACIFIC STOCK EXCHANGE
HIRE
OLD
PEOPLE
T I N Y L I T T L E P L U G
B E C A U S E T H E Y C A N W R I T E B O O K S F I L L E D W I T H L E S S O N S L E A R N E D
IMPACT ANALYSIS
IS EASIER & FASTER
USING
CODECEPTION
FOR ACCEPTANCE TESTING
ACCEPTANCE TESTS
REPLICATE A USER’S
EXPERIENCE & ARE DRIVEN
BY “EXPECTATION” LOGIC.
THEY REMEMBER ALL THE PREVIOUS
DECISIONS & PROMISES YOU MADE.
Title
As a [role]
I want [feature]
So that [benefit]
Acceptance Criteria
Scenario: Title
Given [context]
When [event]
Then [outcome]
hdp://dannorth.net/whats-­‐in-­‐a-­‐story/
<?php
$I = new AcceptanceTester($scenario);
$I->am(‘A Subscriber’);
$I->wantTo(‘edit my profile’);
$I->amOnPage(‘/members/edit-profile/’);
$I->canSee(‘Personal Information’);
?>
$  php  codecept.phar  generate:scenarios
I want to edit my profile
I am on page ‘members/edit-profile’
I see ‘Personal Information’
...
This  is  the  expectaPon  logic  that  is  easy  to  remember  later.  And  it’s  really  
helpful  when  something  breaks.  Because  we  know  exactly  what  we  were  
trying  to  do  and  how  to  verify  that  something  broke.
wantTo
amOnPage
lookForwardTo
click
fillField
selectOption
submitForm
see
seeLink
seeElement
dontSeeElement
seeInCurrentUrl
seeCheckboxIsChecked
seeInField
CODECEPTION COMMANDS	
  
1.  wget http://codeception.com/codecept.phar
2. php codecept.phar bootstrap
3. php codecept.phar generate:cept acceptance Welcome
4. Edit file tests/acceptance/WelcomeCept.php
5. Write your first acceptance test
6. Put application URL into tests/acceptance.suite.yml
7.  php codecept.phar run
	
  
GETTING STARTED IS EASY
hdp://codecepPon.com/quickstart
395ACCEPTANCE TESTS
AUTOMATED ACCEPTANCE TESTING
GITHUB	
  SCRUTINIZER	
  CODECEPTION	
  CAPISTRANO	
  
PUSH
 REPO
TESTS
Registered  w/  ScruPnizer?
 ScruPnizer  calls  
CodecepPon
Do  the  tests  pass?
ScruPnizer  
iniPates
deployment
Capistrano  only  deploys  code  that’s  passed  acceptance  tests
80mph
SPEED
The  goal  isn’t  to  write  these  tests  
quickly.  Or  even  to  learn  quickly  which  
acceptance  tests  to  write.  The  goal  is  
to  find  places  of  impact  quickly.
ConEnuous	
  effort	
  	
  
–  not  strength  or  intelligence  –    
is  the  key  to  unlocking  our  
potenPal.  
Sir	
  Winston	
  Churchill
Maybe  you  saw  this  in  the  papers,  online,    
or  read  about  it  recently.  It  sPll  bears  telling.	
  
ONE LAST STORY...
KNIGHT CAPITAL - August 2012
$440
million
$10MM
every minute
45
MINUTES
8
SERVERS
LET ME MAKE A GUESS. YOU DON’T WANT YOUR NAME IN AN SEC FILING. 	
  
RESOURCES
TO GET YOU STARTED
hdp://codecepPon.com/quickstart
hdp://codecepPon.com/docs/01-­‐IntroducPon
hdp://codecepPon.com/docs/02-­‐GekngStarted
hdp://codecepPon.com/docs/04-­‐AcceptanceTests
hdp://dannorth.net/whats-­‐in-­‐a-­‐story/
hdps://vimeo.com/rzen/codecepPon
CHRIS LEMA
CTO & CHIEF STRATEGIST, CROWD FAVORITE
@chrislema | http://chrislema.com

More Related Content

What's hot

The Technical Interview
The Technical InterviewThe Technical Interview
The Technical InterviewAmy Toncray
 
BEST CAREER GUIDANCE
 BEST CAREER GUIDANCE BEST CAREER GUIDANCE
BEST CAREER GUIDANCEVS E
 
Jobs To Be Done - framework explained by Mark Opanasiuk.pdf
Jobs To Be Done - framework explained by Mark Opanasiuk.pdfJobs To Be Done - framework explained by Mark Opanasiuk.pdf
Jobs To Be Done - framework explained by Mark Opanasiuk.pdfMark Opanasiuk
 
The Start-Up of YOU- Why you should read the book
The Start-Up of YOU- Why you should read the book The Start-Up of YOU- Why you should read the book
The Start-Up of YOU- Why you should read the book Fatma Noureldin
 
Personal Swot Analysis
Personal Swot AnalysisPersonal Swot Analysis
Personal Swot Analysism nagaRAJU
 
Creating Powerful Personas
Creating Powerful PersonasCreating Powerful Personas
Creating Powerful PersonasBlake Pickering
 
Self Discovery
Self DiscoverySelf Discovery
Self Discoverydaolad
 
The Power of Questioning
The Power of QuestioningThe Power of Questioning
The Power of QuestioningAngela Maiers
 
Cracking the Product Manager Interview with Gayle McDowell
Cracking the Product Manager Interview with Gayle McDowellCracking the Product Manager Interview with Gayle McDowell
Cracking the Product Manager Interview with Gayle McDowellProduct School
 
Career guidance lecture.ppt
Career guidance lecture.pptCareer guidance lecture.ppt
Career guidance lecture.pptRENLIEOMADLE
 
How to choose a career
How to choose a careerHow to choose a career
How to choose a careerGoPBN Pvt.Ltd
 
Training on Problem Solving Skills
Training on Problem Solving SkillsTraining on Problem Solving Skills
Training on Problem Solving SkillsAnirudhSingh144
 
Career Planning PowerPoint
Career Planning PowerPointCareer Planning PowerPoint
Career Planning PowerPointemurfield
 
30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study Guide30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study GuideLewis Lin 🦊
 
Week-7: Value Proposition & Design Thinking
Week-7: Value Proposition & Design ThinkingWeek-7: Value Proposition & Design Thinking
Week-7: Value Proposition & Design ThinkingOracle
 

What's hot (20)

The Technical Interview
The Technical InterviewThe Technical Interview
The Technical Interview
 
BEST CAREER GUIDANCE
 BEST CAREER GUIDANCE BEST CAREER GUIDANCE
BEST CAREER GUIDANCE
 
Career and career choices
Career and career choicesCareer and career choices
Career and career choices
 
Jobs To Be Done - framework explained by Mark Opanasiuk.pdf
Jobs To Be Done - framework explained by Mark Opanasiuk.pdfJobs To Be Done - framework explained by Mark Opanasiuk.pdf
Jobs To Be Done - framework explained by Mark Opanasiuk.pdf
 
The Start-Up of YOU- Why you should read the book
The Start-Up of YOU- Why you should read the book The Start-Up of YOU- Why you should read the book
The Start-Up of YOU- Why you should read the book
 
Personal Swot Analysis
Personal Swot AnalysisPersonal Swot Analysis
Personal Swot Analysis
 
Creating Powerful Personas
Creating Powerful PersonasCreating Powerful Personas
Creating Powerful Personas
 
Personal Development
Personal DevelopmentPersonal Development
Personal Development
 
Self Discovery
Self DiscoverySelf Discovery
Self Discovery
 
The Power of Questioning
The Power of QuestioningThe Power of Questioning
The Power of Questioning
 
Cracking the Product Manager Interview with Gayle McDowell
Cracking the Product Manager Interview with Gayle McDowellCracking the Product Manager Interview with Gayle McDowell
Cracking the Product Manager Interview with Gayle McDowell
 
Career guidance lecture.ppt
Career guidance lecture.pptCareer guidance lecture.ppt
Career guidance lecture.ppt
 
Personal Development Plans
Personal Development PlansPersonal Development Plans
Personal Development Plans
 
How to choose a career
How to choose a careerHow to choose a career
How to choose a career
 
Freelancing article
Freelancing articleFreelancing article
Freelancing article
 
Problem solving
Problem solvingProblem solving
Problem solving
 
Training on Problem Solving Skills
Training on Problem Solving SkillsTraining on Problem Solving Skills
Training on Problem Solving Skills
 
Career Planning PowerPoint
Career Planning PowerPointCareer Planning PowerPoint
Career Planning PowerPoint
 
30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study Guide30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study Guide
 
Week-7: Value Proposition & Design Thinking
Week-7: Value Proposition & Design ThinkingWeek-7: Value Proposition & Design Thinking
Week-7: Value Proposition & Design Thinking
 

Similar to Impact Analysis - LoopConf

2010 04 28 The Lean Startup webinar for the Lean Enterprise Institute
2010 04 28 The Lean Startup webinar for the Lean Enterprise Institute2010 04 28 The Lean Startup webinar for the Lean Enterprise Institute
2010 04 28 The Lean Startup webinar for the Lean Enterprise InstituteEric Ries
 
Software Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docxSoftware Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docxrosemariebrayshaw
 
Bundledarrows150 bit.ly/teamcaptainsmanagementcampsv
Bundledarrows150 bit.ly/teamcaptainsmanagementcampsvBundledarrows150 bit.ly/teamcaptainsmanagementcampsv
Bundledarrows150 bit.ly/teamcaptainsmanagementcampsvshadowboxingtv
 
STQA-Vol9-Issue2-March-2012-Software-Testing-Magazine
STQA-Vol9-Issue2-March-2012-Software-Testing-MagazineSTQA-Vol9-Issue2-March-2012-Software-Testing-Magazine
STQA-Vol9-Issue2-March-2012-Software-Testing-MagazineAlbert Gareev
 
2010 03 09 the lean startup - gdc
2010 03 09 the lean startup - gdc2010 03 09 the lean startup - gdc
2010 03 09 the lean startup - gdcEric Ries
 
The Missing Piece between Discovery and Execution
The Missing Piece between Discovery and ExecutionThe Missing Piece between Discovery and Execution
The Missing Piece between Discovery and ExecutionSteffen Kastner
 
Increasing The Probability Of Success For Your Project
Increasing The Probability Of Success For Your ProjectIncreasing The Probability Of Success For Your Project
Increasing The Probability Of Success For Your ProjectGlen Alleman
 
Rapid prototyping and how to avoid building a product nobody wants
Rapid prototyping and how to avoid building a product nobody wantsRapid prototyping and how to avoid building a product nobody wants
Rapid prototyping and how to avoid building a product nobody wantsMike Parsons
 
0 for 3: Edtech Startup Lessons Learned
0 for 3: Edtech Startup Lessons Learned0 for 3: Edtech Startup Lessons Learned
0 for 3: Edtech Startup Lessons LearnedSeriousGamesAssoc
 
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...Agile Software Community of India
 
2010 10 19 the lean startup workshop for i_gap ireland
2010 10 19 the lean startup workshop for i_gap ireland2010 10 19 the lean startup workshop for i_gap ireland
2010 10 19 the lean startup workshop for i_gap irelandEric Ries
 
Test execution
Test executionTest execution
Test executionadarsh j
 
Master the essentials of conversion optimization
Master the essentials of conversion optimizationMaster the essentials of conversion optimization
Master the essentials of conversion optimizationArnas Rackauskas
 
SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...
SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...
SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...Distilled
 
Driving agility into your customer experience
Driving agility into your customer experienceDriving agility into your customer experience
Driving agility into your customer experiencemarc mcneill
 
A Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdfA Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdfTravisMcPeak1
 
PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...
PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...
PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...Andrey Karpov
 
2010 08 19 The Lean Startup TechAviv
2010 08 19 The Lean Startup TechAviv2010 08 19 The Lean Startup TechAviv
2010 08 19 The Lean Startup TechAvivEric Ries
 
2009 10 28 The Lean Startup In Paris
2009 10 28 The Lean Startup In Paris2009 10 28 The Lean Startup In Paris
2009 10 28 The Lean Startup In ParisEric Ries
 
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRYLizzyManz
 

Similar to Impact Analysis - LoopConf (20)

2010 04 28 The Lean Startup webinar for the Lean Enterprise Institute
2010 04 28 The Lean Startup webinar for the Lean Enterprise Institute2010 04 28 The Lean Startup webinar for the Lean Enterprise Institute
2010 04 28 The Lean Startup webinar for the Lean Enterprise Institute
 
Software Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docxSoftware Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docx
 
Bundledarrows150 bit.ly/teamcaptainsmanagementcampsv
Bundledarrows150 bit.ly/teamcaptainsmanagementcampsvBundledarrows150 bit.ly/teamcaptainsmanagementcampsv
Bundledarrows150 bit.ly/teamcaptainsmanagementcampsv
 
STQA-Vol9-Issue2-March-2012-Software-Testing-Magazine
STQA-Vol9-Issue2-March-2012-Software-Testing-MagazineSTQA-Vol9-Issue2-March-2012-Software-Testing-Magazine
STQA-Vol9-Issue2-March-2012-Software-Testing-Magazine
 
2010 03 09 the lean startup - gdc
2010 03 09 the lean startup - gdc2010 03 09 the lean startup - gdc
2010 03 09 the lean startup - gdc
 
The Missing Piece between Discovery and Execution
The Missing Piece between Discovery and ExecutionThe Missing Piece between Discovery and Execution
The Missing Piece between Discovery and Execution
 
Increasing The Probability Of Success For Your Project
Increasing The Probability Of Success For Your ProjectIncreasing The Probability Of Success For Your Project
Increasing The Probability Of Success For Your Project
 
Rapid prototyping and how to avoid building a product nobody wants
Rapid prototyping and how to avoid building a product nobody wantsRapid prototyping and how to avoid building a product nobody wants
Rapid prototyping and how to avoid building a product nobody wants
 
0 for 3: Edtech Startup Lessons Learned
0 for 3: Edtech Startup Lessons Learned0 for 3: Edtech Startup Lessons Learned
0 for 3: Edtech Startup Lessons Learned
 
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
Thinking more product: Moving from Scrum to a dual-track agile approach by Su...
 
2010 10 19 the lean startup workshop for i_gap ireland
2010 10 19 the lean startup workshop for i_gap ireland2010 10 19 the lean startup workshop for i_gap ireland
2010 10 19 the lean startup workshop for i_gap ireland
 
Test execution
Test executionTest execution
Test execution
 
Master the essentials of conversion optimization
Master the essentials of conversion optimizationMaster the essentials of conversion optimization
Master the essentials of conversion optimization
 
SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...
SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...
SearchLove London 2016 | Stephen Pavlovich | Habits of Advanced Conversion Op...
 
Driving agility into your customer experience
Driving agility into your customer experienceDriving agility into your customer experience
Driving agility into your customer experience
 
A Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdfA Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdf
 
PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...
PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...
PVS-Studio and CppCat: An Interview with Andrey Karpov, the Project CTO and D...
 
2010 08 19 The Lean Startup TechAviv
2010 08 19 The Lean Startup TechAviv2010 08 19 The Lean Startup TechAviv
2010 08 19 The Lean Startup TechAviv
 
2009 10 28 The Lean Startup In Paris
2009 10 28 The Lean Startup In Paris2009 10 28 The Lean Startup In Paris
2009 10 28 The Lean Startup In Paris
 
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
 

More from Chris Lema

Cada Segunda Cuenta
Cada Segunda CuentaCada Segunda Cuenta
Cada Segunda CuentaChris Lema
 
Every Second Counts - Speeding up WooCommerce
Every Second Counts - Speeding up WooCommerceEvery Second Counts - Speeding up WooCommerce
Every Second Counts - Speeding up WooCommerceChris Lema
 
Getting what you want without becoming who you're not
Getting what you want without becoming who you're notGetting what you want without becoming who you're not
Getting what you want without becoming who you're notChris Lema
 
Coupons Order Bumps & One-time Offers
Coupons Order Bumps & One-time OffersCoupons Order Bumps & One-time Offers
Coupons Order Bumps & One-time OffersChris Lema
 
eCommerce Segmentation
eCommerce SegmentationeCommerce Segmentation
eCommerce SegmentationChris Lema
 
Designing the Perfect Product Page
Designing the Perfect Product PageDesigning the Perfect Product Page
Designing the Perfect Product PageChris Lema
 
The Goal Is Conversion
The Goal Is ConversionThe Goal Is Conversion
The Goal Is ConversionChris Lema
 
Why WooCommerce
Why WooCommerceWhy WooCommerce
Why WooCommerceChris Lema
 
Selling WooCommerce
Selling WooCommerceSelling WooCommerce
Selling WooCommerceChris Lema
 
Optimize Your Store with Segmentation
Optimize Your Store with SegmentationOptimize Your Store with Segmentation
Optimize Your Store with SegmentationChris Lema
 
Improving Store Conversions
Improving Store ConversionsImproving Store Conversions
Improving Store ConversionsChris Lema
 
Scoping eCommerce Projects
Scoping eCommerce ProjectsScoping eCommerce Projects
Scoping eCommerce ProjectsChris Lema
 
Building the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store EverBuilding the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store EverChris Lema
 
Your Next WooCommerce Store
Your Next WooCommerce StoreYour Next WooCommerce Store
Your Next WooCommerce StoreChris Lema
 
Getting Ready for Gutenberg
Getting Ready for GutenbergGetting Ready for Gutenberg
Getting Ready for GutenbergChris Lema
 
Building an Online Course with WooCommerce
Building an Online Course with WooCommerceBuilding an Online Course with WooCommerce
Building an Online Course with WooCommerceChris Lema
 
Understanding GDPR in the context of WooCommerce
Understanding GDPR in the context of WooCommerceUnderstanding GDPR in the context of WooCommerce
Understanding GDPR in the context of WooCommerceChris Lema
 
Speeding Up WooCommerce
Speeding Up WooCommerceSpeeding Up WooCommerce
Speeding Up WooCommerceChris Lema
 
WordCamp Miami - WooCommerce Workshop
WordCamp Miami - WooCommerce WorkshopWordCamp Miami - WooCommerce Workshop
WordCamp Miami - WooCommerce WorkshopChris Lema
 

More from Chris Lema (20)

Cada Segunda Cuenta
Cada Segunda CuentaCada Segunda Cuenta
Cada Segunda Cuenta
 
Every Second Counts - Speeding up WooCommerce
Every Second Counts - Speeding up WooCommerceEvery Second Counts - Speeding up WooCommerce
Every Second Counts - Speeding up WooCommerce
 
Getting what you want without becoming who you're not
Getting what you want without becoming who you're notGetting what you want without becoming who you're not
Getting what you want without becoming who you're not
 
Coupons Order Bumps & One-time Offers
Coupons Order Bumps & One-time OffersCoupons Order Bumps & One-time Offers
Coupons Order Bumps & One-time Offers
 
eCommerce Segmentation
eCommerce SegmentationeCommerce Segmentation
eCommerce Segmentation
 
Designing the Perfect Product Page
Designing the Perfect Product PageDesigning the Perfect Product Page
Designing the Perfect Product Page
 
The Goal Is Conversion
The Goal Is ConversionThe Goal Is Conversion
The Goal Is Conversion
 
Why WooCommerce
Why WooCommerceWhy WooCommerce
Why WooCommerce
 
Selling WooCommerce
Selling WooCommerceSelling WooCommerce
Selling WooCommerce
 
Optimize Your Store with Segmentation
Optimize Your Store with SegmentationOptimize Your Store with Segmentation
Optimize Your Store with Segmentation
 
10 Questions
10 Questions10 Questions
10 Questions
 
Improving Store Conversions
Improving Store ConversionsImproving Store Conversions
Improving Store Conversions
 
Scoping eCommerce Projects
Scoping eCommerce ProjectsScoping eCommerce Projects
Scoping eCommerce Projects
 
Building the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store EverBuilding the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store Ever
 
Your Next WooCommerce Store
Your Next WooCommerce StoreYour Next WooCommerce Store
Your Next WooCommerce Store
 
Getting Ready for Gutenberg
Getting Ready for GutenbergGetting Ready for Gutenberg
Getting Ready for Gutenberg
 
Building an Online Course with WooCommerce
Building an Online Course with WooCommerceBuilding an Online Course with WooCommerce
Building an Online Course with WooCommerce
 
Understanding GDPR in the context of WooCommerce
Understanding GDPR in the context of WooCommerceUnderstanding GDPR in the context of WooCommerce
Understanding GDPR in the context of WooCommerce
 
Speeding Up WooCommerce
Speeding Up WooCommerceSpeeding Up WooCommerce
Speeding Up WooCommerce
 
WordCamp Miami - WooCommerce Workshop
WordCamp Miami - WooCommerce WorkshopWordCamp Miami - WooCommerce Workshop
WordCamp Miami - WooCommerce Workshop
 

Recently uploaded

Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 

Recently uploaded (20)

Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 

Impact Analysis - LoopConf

  • 2. This  is  a  story  that  bears  strong  resemblance  to  a  real   project.  I  can’t  tell  you  the  details  but  I  can  tell  you   enough  of  it  to  make  it  useful  as  a  story.  I’ll  protect  the   innocent.  Oh  wait,  there  were  no  innocents.   CAN I TELL YOU A STORY?
  • 3. PERFECT CLIENT BUILD  THE   SOLUTION DESIGN  THE   SOLUTION RECIEVE  THE   REQUIREMENTS GO  THROUGH  THE   SECOND  ROUND   OF  SAME  PHASE NO   YES   TEST  &  SHOW   THE  CLIENT release start  of  iteraPon THEWAYIT’SSUPPOSEDTOWORK
  • 4. LARGE CLIENT BUILD  THE   SOLUTION DESIGN  THE   SOLUTION RECIEVE  THE   REQUIREMENTS YES.  WE  KNOW   WHO  YOU  ARE. OK.  WE’RE  ON  IT. NO   WAIT!  LET’S   ADD  NEW   SCOPE TEST  &  SHOW   THE  CLIENT WHATHAPPENSWHEN...
  • 5. THE DANGER ZONE The  porPon  of  a  project  where  all  your  profit  disappears   and  you’re  wondering  how  you  got  here  in  the  first  place. HOPE ACTUAL SOW   DEVELOPMENT  &  QA DISCOVERY LAUNCH Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep 2014 2015 THE PROJECT TIMELINE TELLS THE STORY SOW DEVELOPMENT DISCOVERY SOW  &  CONTRACTS   DEVELOPMENT DISCOVERY LAUNCH PARTNER  API  IS  A  WORK  IN  PROGRESS DANGER ZONE
  • 6. CLIENTS ARE IDEA FACTORIES You  can’t  blame  a  client  for  having  a  lot  of   new  ideas  when  they  can  finally  interact   with  the  system  they’ve  been  paying  for.
  • 7. DEVELOPERS GET EASILY ANCHORED We  o]en  get  locked  in  on  the  original  statement   of  work  -­‐  and  the  tasks  we  created  based  on   them.  Even  if  a  client  has  to  adjust  course.
  • 9. THE PROJECT BY THE NUMBERS # OF COMMITS # OF CONTRIBUTORS # OF MONTHS 4461 12 8
  • 10. THE PROBLEM IS OUR BRAIN & MEMORY
  • 11. 0% The number of staff we have that have perfect memory and can do impact analysis in their sleep.
  • 12. IMPACT ANALYSIS The  work  that  must  be  done  when  a  client   requests  new  work  (new  scope)  and  it  must  be   determined  what  the  changes  will  do  (what   impact  they’ll  have)  on  exisPng  code. HINT:  IT’S  REALLY  HARD  TO  DO.  
  • 13. HOW DO YOU MAKE CHOICES WHEN YOU WRITE CODE? Idea Insight CODE CODE CODE Talk Talk Talk Choice Choice Choice If  you  noPce  the   performance  isn’t   great,  maybe  you   try  a  new  approach. Seeing  someone   else’s  code  helps  you   think  about  your  own   in  a  new  way. New  informaPon   suggests  you   thought  about  it  all   wrong.  Which  leads   to  changes  in  your   code. LET ME MAKE A GUESS. YOU DON’T WRITE THIS ALL DOWN. I NEVER DID.  
  • 14.     NOTACHANGEORDERISSUE NOT  A  MONEY  ISSUE.  IT’S  ABOUT  RISK  MITIGATION.
  • 15. THE DANGER ZONE The  place  where  you  break  your  own  code  and  can’t   charge  anyone  else  because  it’s  your  mistake. HOPE ACTUAL SOW   DEVELOPMENT  &  QA DISCOVERY LAUNCH Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep 2014 2015 WE CREATED CHANGE ORDERS FOR NEW WORK... SOW DEVELOPMENT DISCOVERY SOW  &  CONTRACTS   DEVELOPMENT DISCOVERY LAUNCH PARTNER  API  IS  A  WORK  IN  PROGRESS DANGER ZONE
  • 16. Everything, which is done orderly, with measure and according to rules, generates something good. Plato
  • 17. This  is  another  story.  It’s  what  turned  me   onto  automated  impact  analysis  thru   acceptance  tesPng.   CAN I TELL YOU A STORY?
  • 18. The  trading  engine  for   market  makers  was  a   message-­‐oriented  soluEon   that  was  having   performance  issues.   No  one  thought  about   gridlock  because  no  one   thought  about  the  big   picture.   PACIFIC STOCK EXCHANGE
  • 19. HIRE OLD PEOPLE T I N Y L I T T L E P L U G B E C A U S E T H E Y C A N W R I T E B O O K S F I L L E D W I T H L E S S O N S L E A R N E D
  • 20. IMPACT ANALYSIS IS EASIER & FASTER USING CODECEPTION FOR ACCEPTANCE TESTING
  • 21. ACCEPTANCE TESTS REPLICATE A USER’S EXPERIENCE & ARE DRIVEN BY “EXPECTATION” LOGIC. THEY REMEMBER ALL THE PREVIOUS DECISIONS & PROMISES YOU MADE.
  • 22. Title As a [role] I want [feature] So that [benefit] Acceptance Criteria Scenario: Title Given [context] When [event] Then [outcome] hdp://dannorth.net/whats-­‐in-­‐a-­‐story/
  • 23. <?php $I = new AcceptanceTester($scenario); $I->am(‘A Subscriber’); $I->wantTo(‘edit my profile’); $I->amOnPage(‘/members/edit-profile/’); $I->canSee(‘Personal Information’); ?> $  php  codecept.phar  generate:scenarios
  • 24. I want to edit my profile I am on page ‘members/edit-profile’ I see ‘Personal Information’ ... This  is  the  expectaPon  logic  that  is  easy  to  remember  later.  And  it’s  really   helpful  when  something  breaks.  Because  we  know  exactly  what  we  were   trying  to  do  and  how  to  verify  that  something  broke.
  • 26. 1.  wget http://codeception.com/codecept.phar 2. php codecept.phar bootstrap 3. php codecept.phar generate:cept acceptance Welcome 4. Edit file tests/acceptance/WelcomeCept.php 5. Write your first acceptance test 6. Put application URL into tests/acceptance.suite.yml 7.  php codecept.phar run   GETTING STARTED IS EASY hdp://codecepPon.com/quickstart
  • 28. AUTOMATED ACCEPTANCE TESTING GITHUB  SCRUTINIZER  CODECEPTION  CAPISTRANO   PUSH REPO TESTS Registered  w/  ScruPnizer? ScruPnizer  calls   CodecepPon Do  the  tests  pass? ScruPnizer   iniPates deployment Capistrano  only  deploys  code  that’s  passed  acceptance  tests
  • 29. 80mph SPEED The  goal  isn’t  to  write  these  tests   quickly.  Or  even  to  learn  quickly  which   acceptance  tests  to  write.  The  goal  is   to  find  places  of  impact  quickly.
  • 30. ConEnuous  effort     –  not  strength  or  intelligence  –     is  the  key  to  unlocking  our   potenPal.   Sir  Winston  Churchill
  • 31. Maybe  you  saw  this  in  the  papers,  online,     or  read  about  it  recently.  It  sPll  bears  telling.   ONE LAST STORY...
  • 32. KNIGHT CAPITAL - August 2012 $440 million $10MM every minute 45 MINUTES 8 SERVERS LET ME MAKE A GUESS. YOU DON’T WANT YOUR NAME IN AN SEC FILING.  
  • 33. RESOURCES TO GET YOU STARTED hdp://codecepPon.com/quickstart hdp://codecepPon.com/docs/01-­‐IntroducPon hdp://codecepPon.com/docs/02-­‐GekngStarted hdp://codecepPon.com/docs/04-­‐AcceptanceTests hdp://dannorth.net/whats-­‐in-­‐a-­‐story/ hdps://vimeo.com/rzen/codecepPon
  • 34. CHRIS LEMA CTO & CHIEF STRATEGIST, CROWD FAVORITE @chrislema | http://chrislema.com