kanban in action - yow west 2015

Post on 03-Aug-2015

222 Views

Category:

Leadership & Management

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Kanban In Action

Marcus Hammarbergwww.marcusoft.net @marcusoftnet marcusoft.net@gmail.com

http://commons.wikimedia.org/wiki/File:240_Sparks_Elevators.jpgUsed under Creative Commons

Why

How

Used under http://creativecommons.org/licenses/by-sa/3.0/deed.en

Who

http://apphrodite.co.uk/2014/04/

https://www.flickr.com/photos/coffeegeek/491661232used under Creative Commons

Why should I care?From Wikipedia, used under Creative Commons

Kanban is a process improvement tool. It makes you and your team better.

It’s collaborative, visual and really simple to pick up

2 weeks later …

From Wikipedia

Collaborative, visual and really simple process improvement tool

Third date

Mapping the workflowBy Anne,The Map That Came To Life, Used under Creative Commons

Doing or something

DoneDeployTestDevAnalyseTodo

DoneDeployTestDevAnalyseTodo

?

DoneDeployTestDevAnalyseTodo Design Coding

By Julija Rauluševičiūtė, Advanced Mac user II, Used under Creative Commons

“Working Software” is software that users are actually using. Until it’s in use it is truly useless - Woody zuill

#112341-12

#112341-12

A good description that tells what thissticky is actually is all about.

End of year reporting isworking even for X typeof customers

#112341-12

End of year reporting isworking even for X typeof customers

2014-12-31

Waiting for

Joakim to fix

db-script

…………

By Leszek Leszczynski, Red ones go faster, Used under Creative Commons

The Counting Game

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1 2 3 4 5 6 7 8 910

A - J I - X 1 - 10

http://bit.ly/passthepennies

ROW BY ROW RUNDOING ALL PROJECT AT ONCE

Let’s try it

Row by row - run

A - J I - X 1 - 10

Time:

“Clock”:00:00

Row by row - run

A - J I - X 1 - 10

Time:

“Clock”:00:01

Row by row - run

A

A - J I - X 1 - 10

Time:

“Clock”:00:02

Row by row - run

A

A - J I - X 1 - 10

Time:

“Clock”:00:03

Row by row - run

A

A - J I - X 1 - 10

Time:

“Clock”:00:04

Row by row - run

A I

A - J I - X 1 - 10

Time:

“Clock”:00:04

Row by row - run

A I

A - J I - X 1 - 10

Time:

“Clock”:00:04

Row by row - run

A I

A - J I - X 1 - 10

Time:

“Clock”:00:05

Row by row - run

A I

A - J I - X 1 - 10

Time:

“Clock”:00:06

Row by row - run

A I 1

A - J I - X 1 - 10

Time:

“Clock”:00:07

Row by row - run

A I 1

A - J I - X 1 - 10

Time:

“Clock”:00:08

Row by row - run

A I 1

A - J I - X 1 - 10

Time:

“Clock”:00:09

Row by row - run

AB

I 1

A - J I - X 1 - 10

Time:

“Clock”:00:10

Row by row - run

AB

I 1

A - J I - X 1 - 10

Time:

“Clock”:00:11

Row by row - run

AB

I 1

A - J I - X 1 - 10

Time:

“Clock”:00:12

Row by row - run

AB

III

1

A - J I - X 1 - 10

Time:

“Clock”:00:13

Row by row - run

AB

III

1

A - J I - X 1 - 10

Time:

“Clock”:00:14

Row by row - run

AB

III

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:15

Row by row - run

AB

III

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:16

Row by row - run

AB

III

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:17

Row by row - run

ABC

III

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:18

Row by row - run

ABC

III

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:19

Row by row - run

ABC

III

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:20

Row by row - run

ABC

IIIIII

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:21

Row by row - run

ABC

IIIIII

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:22

Row by row - run

ABC

IIIIII

1 2

A - J I - X 1 - 10

Time:

“Clock”:00:23

Row by row - run

ABC

IIIIII

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:24

Row by row - run

ABC

IIIIII

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:25

Row by row - run

ABC

IIIIII

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:26

Row by row - run

ABCD

IIIIII

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:27

Row by row - run

ABCD

IIIIII

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:28

Row by row - run

ABCD

IIIIII

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:29

Row by row - run

ABCD

IIIIIIIV

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:30

Row by row - run

ABCD

IIIIIIIV

1 2 3

A - J I - X 1 - 10

Time:

“Clock”:00:31

Row by row - run

ABCD

IIIIIIIV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:32

Row by row - run

ABCD

IIIIIIIV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:33

Row by row - run

ABCD

IIIIIIIV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:34

Row by row - run

ABCDE

IIIIIIIV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:35

Row by row - run

ABCDE

IIIIIIIV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:36

Row by row - run

ABCDE

IIIIIIIV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:37

Row by row - run

ABCDE

IIIIIIIVV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:38

Row by row - run

ABCDE

IIIIIIIVV

1 2 3 4

A - J I - X 1 - 10

Time:

“Clock”:00:39

Row by row - run

ABCDE

IIIIIIIVV

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:40

Row by row - run

ABCDE

IIIIIIIVV

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:41

Row by row - run

ABCDE

IIIIIIIVV

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:42

Row by row - run

ABCDEF

IIIIIIIVV

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:43

Row by row - run

ABCDEF

IIIIIIIVV

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:44

Row by row - run

ABCDEF

IIIIIIIVV

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:45

Row by row - run

ABCDEF

IIIIIIIVV

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:46

Row by row - run

ABCDEF

IIIIIIIVVVI

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:47

Row by row - run

ABCDEF

IIIIIIIVVVI

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:48

Row by row - run

ABCDEF

IIIIIIIVVVI

1 2 3 4 5

A - J I - X 1 - 10

Time:

“Clock”:00:49

Row by row - run

ABCDEF

IIIIIIIVVVI

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:50

Row by row - run

ABCDEF

IIIIIIIVVVI

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:51

Row by row - run

ABCDEF

IIIIIIIVVVI

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:52

Row by row - run

ABCDEFG

IIIIIIIVVVI

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:53

Row by row - run

ABCDEFG

IIIIIIIVVVI

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:54

Row by row - run

ABCDEFG

IIIIIIIVVVI

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:55

Row by row - run

ABCDEFG

IIIIIIIVVVIVII

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:56

Row by row - run

ABCDEFG

IIIIIIIVVVIVII

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:57

Row by row - run

ABCDEFG

IIIIIIIVVVIVII

1 2 3 4 5 6

A - J I - X 1 - 10

Time:

“Clock”:00:58

Row by row - run

ABCDEFG

IIIIIIIVVVIVII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:00:59

Row by row - run

ABCDEFG

IIIIIIIVVVIVII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:00

Row by row - run

ABCDEFG

IIIIIIIVVVIVII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:01

Row by row - run

ABCDEFGH

IIIIIIIVVVIVII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:02

Row by row - run

ABCDEFGH

IIIIIIIVVVIVII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:03

Row by row - run

ABCDEFGH

IIIIIIIVVVIVII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:04

Row by row - run

ABCDEFGH

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:05

Row by row - run

ABCDEFGH

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:06

Row by row - run

ABCDEFGH

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7

A - J I - X 1 - 10

Time:

“Clock”:01:07

Row by row - run

ABCDEFGH

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:08

Row by row - run

ABCDEFGH

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:09

Row by row - run

ABCDEFGH

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:10

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:11

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:12

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:13

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:14

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:15

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIVIIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:16

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIVIIII

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:17

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:18

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:19

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8

A - J I - X 1 - 10

Time:

“Clock”:01:20

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:20

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:21

Row by row - run

ABCDEFGHI

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:22

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:23

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:24

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:25

01:24

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:26

01:24

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:27

01:24

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1 2 3 4 5 6 7 8 9

A - J I - X 1 - 10

Time:

“Clock”:01:28

01:2701:24

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1 2 3 4 5 6 7 8 910

A - J I - X 1 - 10

Time:

“Clock”:01:29

01:2701:24

Row by row - run

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1 2 3 4 5 6 7 8 910

A - J I - X 1 - 10

Time:

“Clock”:01:30

01:30 01:30

Total:01:2701:24

COLUMN BY COLUMN RUNDOING 1 THING AT THE TIME

Let’s try it again

A - J I - X 1 - 10

Time:

“Clock”:00:00

Column by column - run

A - J I - X 1 - 10

Time:

“Clock”:00:01

Column by column - run

A

A - J I - X 1 - 10

Time:

“Clock”:00:02

Column by column - run

AB

A - J I - X 1 - 10

Time:

“Clock”:00:03

Column by column - run

ABC

A - J I - X 1 - 10

Time:

“Clock”:00:04

Column by column - run

ABCD

A - J I - X 1 - 10

Time:

“Clock”:00:05

Column by column - run

ABCDE

A - J I - X 1 - 10

Time:

“Clock”:00:06

Column by column - run

ABCDEF

A - J I - X 1 - 10

Time:

“Clock”:00:07

Column by column - run

ABCDEFG

A - J I - X 1 - 10

Time:

“Clock”:00:08

Column by column - run

ABCDEFGH

A - J I - X 1 - 10

Time:

“Clock”:00:09

Column by column - run

ABCDEFGHI

A - J I - X 1 - 10

Time:

“Clock”:00:10

Column by column - run

ABCDEFGHIJ

A - J I - X 1 - 10

Time:

“Clock”:00:11

Column by column - run

ABCDEFGHIJ

A - J I - X 1 - 10

Time:

“Clock”:00:12

Column by column - run

00:12

ABCDEFGHIJ

I

A - J I - X 1 - 10

Time:

“Clock”:00:13

Column by column - run

00:12

ABCDEFGHIJ

III

A - J I - X 1 - 10

Time:

“Clock”:00:14

Column by column - run

00:12

ABCDEFGHIJ

IIIIII

A - J I - X 1 - 10

Time:

“Clock”:00:15

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIV

A - J I - X 1 - 10

Time:

“Clock”:00:16

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIVV

A - J I - X 1 - 10

Time:

“Clock”:00:17

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIVVVI

A - J I - X 1 - 10

Time:

“Clock”:00:18

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIVVVIVII

A - J I - X 1 - 10

Time:

“Clock”:00:19

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIVVVIVIIVIII

A - J I - X 1 - 10

Time:

“Clock”:00:20

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIX

A - J I - X 1 - 10

Time:

“Clock”:00:21

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

A - J I - X 1 - 10

Time:

“Clock”:00:22

Column by column - run

00:12

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

A - J I - X 1 - 10

Time:

“Clock”:00:23

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1

A - J I - X 1 - 10

Time:

“Clock”:00:24

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

12

A - J I - X 1 - 10

Time:

“Clock”:00:25

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

123

A - J I - X 1 - 10

Time:

“Clock”:00:26

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1234

A - J I - X 1 - 10

Time:

“Clock”:00:27

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

12345

A - J I - X 1 - 10

Time:

“Clock”:00:28

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

123456

A - J I - X 1 - 10

Time:

“Clock”:00:29

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

1234567

A - J I - X 1 - 10

Time:

“Clock”:00:30

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

12345678

A - J I - X 1 - 10

Time:

“Clock”:00:31

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

123456789

A - J I - X 1 - 10

Time:

“Clock”:00:32

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

12345678910

A - J I - X 1 - 10

Time:

“Clock”:00:33

Column by column - run

00:12 00:23

ABCDEFGHIJ

IIIIIIIVVVIVIIVIIIIXX

12345678910

A - J I - X 1 - 10

Time:

“Clock”:00:34

Column by column - run

00:12 00:23 00:34 00:34

Total:

Row by rowColumn by

column

Total time 01:30 00:34 (38%)

Project 1 01:24 00:12 (14%)

Project 2 01:27 00:23 (26%)

Project 3 (1-10) 01:30 00:34 (38%)

Number of slides 94 36

Lower is better… but not

too low

You can’t do kanban - I understand that now.

The kanban principles can be applied to any process, such as Scrum, to show you what can be improved.

I will never say “we are doing kanban”Nor will I ask: “Which is better, Scrum or kanban?”And never, ever, say: “We used to do Scrum, but now we are doing kanban”

So Help me God

KanbanMaster (tm)(c)(r)

kanban #TooSimpleToCertify

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

3 3 2

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

3 3 2

What should I be doing next?

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

?

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

?

!

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

?

?

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

?

?

?

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

I can’t code!

He can’t code!

He can’t code!

He can’t code!

kanban #TooSimpleToCertify

From http://www.allocine.fr/

When you need me but do not want me, then I must stay. When you want me but no longer need me, then I have to go.

?

Common questions

Standups and smells

Defects

Metrics and estimates

Expedite items

Electronic tools

Standups and smells

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

6 8 2

Urgentmax 1

…….

! !

Defects

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

Urgent!

!

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

Urgent!

FIX!

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

Urgent!

FIX!

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

Urgent!

FIX!

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

Urgent!

FIX!

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

Urgent!

!

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

2 3 2

Urgent!

Metrics and estimates

Outcomes vs activities

Expedite items

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

3 3 2

Maint.

Bug

Feature

Urgent

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

3 3 2

Maint.

Bug

Feature

Urgent

AnalyzeDevelopme

ntTest DoneTodo

Doing DoingDone Done

3 3 2

Maint.

Bug

Feature

Urgent

Electronic toolsDistributed teams

Scrum or Kanban?

You can’t do kanban - I understand that now.

The kanban principles can be applied to any process, such as Scrum, to show you what can be improved.

I will never say “we are doing kanban”Nor will I ask: “Which is better, Scrum or Kanban?”And never, ever, say: “We used to do Scrum, but now we are doing Kanban”

So Help me God!

KanbanMaster (tm)(c)(r)

www.marcusoft.net @marcusoftnet marcusoft.net@gmail.com

. 39% off!39% off!

39kanbanbit.ly/theKanbanBook

39% off!39% off!

top related