Talk Ain’t Easy - XUnitPatterns.comxunitpatterns.com/~gerard/Agile2015slides.pdf · •Software...

32
1 1 Copyright 2015 Gerard Meszaros http:/Agile2015.gerardm.com Talk Ain’t Easy Round-the-World Agile Without any Talk Gerard Meszaros Independent Consultant CTO of FeedXL.Com [email protected] These slides: http://Agile2015.gerardm.com 2 Copyright 2015 Gerard Meszaros http:/Agile2015.gerardm.com Agenda FeedXL Background FeedXL 2.0 How We Work A Day in the Life Key Learnings

Transcript of Talk Ain’t Easy - XUnitPatterns.comxunitpatterns.com/~gerard/Agile2015slides.pdf · •Software...

1

1 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Talk Ain’t EasyRound-the-World Agile Without any Talk

Gerard MeszarosIndependent Consultant

CTO of [email protected]

These slides: http://Agile2015.gerardm.com

2 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Agenda

FeedXL Background

FeedXL 2.0

How We Work

A Day in the Life

Key Learnings

2

3 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Product & I.T.

I.T.

EmbeddedTelecom

My Background

Gerard [email protected]

•Software developer

•Development manager

•Project Manager

•Software architect

•OOA/OOD Mentor

•Requirements (Use Case) Mentor

•XP/TDD Mentor

•Agile PM Mentor

•Test Automation Consultant & Trainer

•Lean/Agile Coach/Consultant

4 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Product & I.T.

I.T.

EmbeddedTelecom

My Background

•Software developer

•Development manager

•Project Manager

•Software architect

•OOA/OOD Mentor

•Requirements (Use Case) Mentor

•XP/TDD Mentor

•Agile PM Mentor

•Test Automation Consultant & Trainer

•Lean/Agile Coach/Consultant Gerard [email protected]

3

5 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Before FeedXL: X’Prime

PhD Project: Rod

Sue

ArmidaleWinnipeg

6 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Before FeedXL: X’Prime

PhD Project:

Armidale

Sue

Rod

4

7 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

X’Prime + Equilize = FeedXL (JV)

Rod

Nerida

8 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

5

9 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

FeedXL 1.0 EvolutionPasture BuilderNew pricing modelJira integrationMore Nutrients andRatiosMore diseasesDiscount Coupons

10 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

After 5 years of FeedXL’ing

6

11 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Rod

Rod’s “Personal Pivot”Gerard

12 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Slack

Syncconvo

Integration

Integration

Topic“channels”

Direct Msg’ing

7

13 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Agenda

FeedXL Background

FeedXL 2.0

How We Work

A Day in the Life

Key Learnings

14 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

FeedXL 2.0

8

15 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Getting Started – Software Archeology

16 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Getting Started – Technology Stack

Browser Server Services

9

17 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Getting Started – Tools Stack

And a lot of manualprocesses to deploy to:

18 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Deployment Architecture

Jira

PayPal

MaxMind

AuthSMTP

Betabeta.my.feedxl.com

Prod MySQL

PHPForums

ELB

LoadBal1

LoadBal2my.feedxl.com

forums.feedxl.com

AWS EC2

MainPublic1feedxl.com

Public2ELB

10

19 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Outsourced Development – 1st Attempt

A

WebCo

A

20 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Outsourced Development – 1st Attempt

11

21 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Get the Wrong Person off the Bus!

A

22 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Outsourced Development – 2nd Attempt

AA

Vikram

12

23 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Outsourced Development – 2nd Attempt

24 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Introducing Business Unit Tests

13

25 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Third Outsourcing ExperienceCsaba

26 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Improving End-to-End TestsNew Diet Can Be Added

Open the horses and diets pageSelect First Existing HorseSelect PasturesCreate DietVerify SummaryPrint And Save

Existing Diet Can Be UpdatedOpen the horses and diets pageSelect First Existing HorseSelect PasturesSelect Existing DietVerify SummaryPrint And Save

Keywords:

Open the horses and diets pageClick Element horsesAndDietsWait Until Page Contains horseMethodSelect

Select First Existing HorseOpen Horse ListClick Element css=#horseList > ul > li:first-childWait Until Page Contains Element css=#horseDetails .horseDetailsTableClick Element wizardNext

RobotFramework

14

27 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

University Project

100 KMApart

Canmore Calgary

10,000 KMApart

Cultural Difference

28 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Agenda

FeedXL Background

FeedXL 2.0

How We Work

A Day in the Life

Key Learnings

15

29 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Communication Tools

PicPick

30 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Development Process & Tools

RobotFramework

16

31 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Planning Board

(Installed)

(Cloud-based)

32 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Acceptance Testing

17

33 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Development

34 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Ready for Assignment

#NoEstimates

Backgroundwork for devs

18

35 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Ready for Prioritization

36 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Understand & Specify

19

37 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Product Backlog

38 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Continuous IntegrationFeature Branchescreate problems!

20

39 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Agenda

FeedXL Background

FeedXL 2.0

How We Work

A Day in the Life

Key Learnings

40 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

21

41 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

Let’s see whathappened overnight.Any tickets?

@gerard, have aquestion for you ….

@vik, can you ….?

42 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

Let’s see whathappened overnight.Any tickets?Business stuff

Feature designBusiness stuffFeature design

@Sue, @nerida,question for you ….

@nerida, ticket for u

22

43 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

Business stuffFeature designBusiness stuffFeature design

@vishal: re …

44 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

Good morningeveryone….

Did sometesting ….

GoodmorningFeedXL

Can someonehelp me…

Boys, we trashedyou in cricket

yesterday!

23

45 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

I’m headed to bedsoon; last call forquestions.

I need to go towork; see you alltomorrow.Deployed

a fix….

46 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

24

47 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

I’m back in; didsome testing…any questions?

I ‘m done for theday; see you alltomorrow.

1:30 PM6:00 PM8:00 PM2:00 AM 11:00 AM

48 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

A Day in the Life of FeedXL

Alberta New Zealand Australia India Romania

Let’s see whathappened overnight.Any tickets?

@gerard, have aquestion for you ….

25

49 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Agenda

FeedXL Background

FeedXL 2.0

How We Work

A Day in the Life

Key Learnings

50 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Planning vs. Plans

Need agraphic for aProject Plane.g. Gantt orPert Chart

26

51 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Improving Customer Support

52 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Deciding What to Build is Hard

27

53 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Communication Somewhat Less So

54 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Communication & Relationships

28

55 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Documentation: Just Enough, JIT

Needs it, Writes it

Needs it, Reads it,Fixes bugs

Etc.

56 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Outsourcing can be very cost-effective

Csaba

Vikram VishalAgile FAQs

Ipso lorem …

29

57 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Get the Wrong Person off the Bus!

A

58 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Cloud-Based Env Ideal for Distr’d Team

Jenkins

30

59 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Results

60 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Next Steps

LoadTesting

Mobile Devices

CD Tools

31

61 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Thank You!Gerard Meszaros

[email protected]://www.xunitpatterns.com

Slides: http://Agile2015.gerardm.com

Call me when you:• Want to transition to Agile or Lean• Want to do Agile or Lean better• Want to teach developers how to test• Need help with test automation strategy• Want to improve your test automation

Jolt Productivity Awardwinner - Technical Books

Available on MSDN:

62 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Product Design (What to Build?)• Word Docs• Excel Spreadsheets• Originally: Axure• Added: HotGloo “clickable” UI prototypes

32

63 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Development Process: Agile (of course!)• LeanKit board for management• Spreadsheets, UI Prototypes, Word Docs for

getting agreement on requirements

64 Copyright 2015 Gerard Meszaroshttp:/Agile2015.gerardm.com

Code Branching Strategy and BuildPipeline• Gitflow

• Branch per feature (deployed each to dev //)• Merge into Release and deploy to Staging• Deploy Release to Beta• Deploy to Production

• Picture from Deployment Guide