Sustainable competence (the people vs process and technology) - - PowerPoint PPT Presentation

sustainable
SMART_READER_LITE
LIVE PREVIEW

Sustainable competence (the people vs process and technology) - - PowerPoint PPT Presentation

Sustainable competence (the people vs process and technology) Simon Brown @simonbrown simon.brown @ coding the architecture .com @ simonbrown on Twitter Jersey, Channel Islands I help software teams understand software architecture , technical


slide-1
SLIDE 1 Simon Brown @simonbrown

Sustainable competence

(the people vs process and technology)
slide-2
SLIDE 2 simon.brown@codingthearchitecture.com @simonbrown on Twitter Jersey, Channel Islands
slide-3
SLIDE 3 I help software teams understand software architecture, technical leadership and the balance with agility I code too ⇧ ;
slide-4
SLIDE 4 Software architecture needs to be more

accessible

Training In-house and public courses Book leanpub.com Speaking Conferences and user groups
slide-5
SLIDE 5 Not all software teams are created equal
slide-6
SLIDE 6 Developer Developer Developer Developer Developer Small teams of generalising specialists, everybody does everything
slide-7
SLIDE 7

Process

slide-8
SLIDE 8 Many IT teams simply do

what they’ve always done

A n d t h i s i s u s u a l l y a v a r i a t i
  • n
  • f
. . .
slide-9
SLIDE 9 The “Waterfall” Model Test Design Analysis Requirements Code W a t e r f a l l n e e d s p r e d i c t a b i l i t y t
  • w
  • r
k
slide-10
SLIDE 10 IT system Work is broken into timeboxes and managed visually Minimum viable product followed by regular high quality releases Team
slide-11
SLIDE 11

“ ”

Let’s use DSDM Atern

slide-12
SLIDE 12 Me Have you read the DSDM Atern book?
slide-13
SLIDE 13 Why not?!
slide-14
SLIDE 14 A workshop to talk about requirements in DSDM Atern
slide-15
SLIDE 15 How do we do this?
slide-16
SLIDE 16

The PRL was

dropped

slide-17
SLIDE 17

DSDM Atern was

dropped

slide-18
SLIDE 18 IT system Work is broken into timeboxes and managed visually Minimum viable product followed by regular high quality releases Team
slide-19
SLIDE 19 A tester X is broken. I’ll send you an e-mail. W h a t h a p p e n e d t
  • d
e f e c t t r a c k i n g a n d c
  • n
f i g u r a t i
  • n
m a n a g e m e n t ?
slide-20
SLIDE 20 Supplier Here’s a new release; it contains

new stuff plus the defects we fixed

W h e n d i d c
  • n
f i g u r a t i
  • n
m a n a g e m e n t g
  • u
t
  • f
f a s h i
  • n
?
slide-21
SLIDE 21 Process is often dropped when things get

frantic

slide-22
SLIDE 22 Project and programme management
slide-23
SLIDE 23 In my experience, most IT project managers are

non-technical

slide-24
SLIDE 24

Are we there yet?

T h i s i s n ’ t p r
  • j
e c t m a n a g e m e n t :
  • /
slide-25
SLIDE 25 Simply *having* a

project plan

doesn’t mean that you’re doing project management either (This is Matt; he’s approximately my height)
slide-26
SLIDE 26 :-( :-| :-) Week 1 :-( :-| :-) Week 2 :-( :-| :-) Week 3 :-( :-| :-) Week 27 ... Status reports are useful but they often don’t reflect reality

:-/

Week 28 #epicfail
slide-27
SLIDE 27 Project Manager

We need another £200,000

H
  • w
c a n y
  • u
p
  • s
s i b l y k n
  • w
t h i s w h e n y
  • u
d
  • n
’ t u n d e r s t a n d t h e s c
  • p
e ? !
slide-28
SLIDE 28 We use

PRINCE2

... but we scale it down
slide-29
SLIDE 29 You have <20 risks for a

£1,000,000+ project?

slide-30
SLIDE 30

Common sense?

slide-31
SLIDE 31

“ ”

We have good people

(we trust them; they will do the right thing)
slide-32
SLIDE 32

Project Poker

We’re running late, but I’m sure the
  • ther team are
behind schedule too We’re all on track to deliver 30th September Us too! We’re late, but I think they are too; let them break the news to the sponsor to buy us some more time
slide-33
SLIDE 33

“ ”

I want you to bust your

ass!

slide-34
SLIDE 34 I want you to bust your ass! Project Manager S t r
  • n
g t e c h n i c a l t e a m ; t h e p r
  • j
e c t m a n a g e r b r
  • u
g h t u s t
  • g
e t h e r !
slide-35
SLIDE 35

Technical leadership

slide-36
SLIDE 36 “Any fool can deliver crap”
slide-37
SLIDE 37 What’s the incentive for

quality?

(especially if there’s a long testing phase
  • r large maintenance contract has been agreed)
I n t e r n a l q u a l i t y ( c l e a n c
  • d
e , g
  • d
s t r u c t u r e , m a i n t a i n a b l e , f l e x i b l e , e t c ) E x t e r n a l q u a l i t y ( i t “ w
  • r
k s ” , l
  • k
& f e e l , r
  • b
u s t , d e l i v e r s v a l u e , e t c )
slide-38
SLIDE 38 That’s for
  • ur
eyes only
slide-39
SLIDE 39 Layers are good, let’s have lots
  • f
them! H
  • w
m a n y l a y e r s s h
  • u
l d w e h a v e ? I t d e p e n d s
  • n
t h e d e v e l
  • p
e r . . . :
  • /
slide-40
SLIDE 40

Collective code

  • wnership is great
(except when some of the code is “too complex”)
slide-41
SLIDE 41 Technical Requirements Document (1) The system must be fast. (2) The system must be highly secure. (3) We need the system to be available 24x7. Remainder of document is the grey text from the template this document was based upon, but nobody understood what it meant so it never got deleted... M a n y I T p r
  • j
e c t s f a i l b e c a u s e t h e t e c h n i c a l r e q u i r e m e n t s w e r e n
  • t
f u l l y u n d e r s t
  • d
. . . b y a n y b
  • d
y !
slide-42
SLIDE 42 The irresponsible architect Cross-site scripting attacks possible; weak passwords allowed; HTTP sessions didn’t timeout; ... Basic functionality errors; little or no quality assurance; rework required late in the project because
  • f assumptions; ...
Oh, did I mention this was supposed to be a “strategic platform”? No non-functional testing (e.g. penetration testing or load testing); ... No documentation; ...
slide-43
SLIDE 43

Technology

slide-44
SLIDE 44 _ _ _ _ _ _ _ _ _ _ isn’t the answer you’re looking for S h a r e P o i n t
slide-45
SLIDE 45 We do automated unit testing & continuous integration
slide-46
SLIDE 46 Modern software development practices are

not optional

for software “professionals” in 2013
slide-47
SLIDE 47 Have you read any books by _ _ _ _ _ _ _ _ _ _

?

slide-48
SLIDE 48 Director of a consulting company (that specialised in SharePoint) SharePoint isn’t “software development”
slide-49
SLIDE 49 Winston Zeddemore, Ghostbusters (1984) We have the tools, and we have the

talent.

R e a l l y ? :
  • /
slide-50
SLIDE 50

“ ”

This clearly

hasn’t

been tested :-/
slide-51
SLIDE 51

Outsourcing

and
  • ffshoring
slide-52
SLIDE 52 Outsourcing and offshoring complicate the situation Supplier Customer
slide-53
SLIDE 53 Many organisations outsource because

IT isn’t their core business

H
  • w
d
  • y
  • u
e f f e c t i v e l y m a n a g e s u p p l i e r s i f t h i s i s t h e c a s e ?
slide-54
SLIDE 54 Supplier We’re an ABC Certified Partner (we got invited to their conference and we have a badge to prove it)
slide-55
SLIDE 55 Vendor certifications & qualifications aren’t the same as having

real-world experience

B e w a r y a b
  • u
t u s i n g t h e m a s a d i f f e r e n t i a t
  • r
. . .
slide-56
SLIDE 56 S t a t e m e n t
  • f
W
  • r
k D e a r v a l u e d c u s t
  • m
e r , W e h a v e p l e a s u r e i n p r
  • v
i d i n g y
  • u
w i t h t h e f
  • l
l
  • w
i n g q u
  • t
e r e l a t e d t
  • u
r r e c e n t d i s c u s s i
  • n
s .
  • T
  • t
a l c
  • s
t : £ 1 4 9 , 9 5 W e h
  • p
e i t m e e t s y
  • u
r n e e d s . L
  • t
s
  • f
l
  • v
e , Y
  • u
r t r u s t e d s u p p l i e r x Assumptions are the mother of all ...
slide-57
SLIDE 57 S t a t e m e n t
  • f
W
  • r
k D e a r v a l u e d c u s t
  • m
e r , W e h a v e p l e a s u r e i n p r
  • v
i d i n g y
  • u
w i t h t h e f
  • l
l
  • w
i n g q u
  • t
e .
  • Replace system X with technology Y
  • Test
  • Deploy
  • T
  • t
a l c
  • s
t : £ 1 4 9 , 9 5 W e h
  • p
e i t m e e t s y
  • u
r n e e d s . L
  • t
s
  • f
l
  • v
e , Y
  • u
r t r u s t e d s u p p l i e r x E r r . . . w h a t d
  • e
s s y s t e m X a c t u a l l y d
  • ?
!
slide-58
SLIDE 58 “Them” and “Us” policies are often

pointless

slide-59
SLIDE 59 S
  • m
e b
  • d
y e l s e d e p l
  • y
s / i n s t a l l s t h e s
  • f
t w a r e Development team builds the software Big live environment “Them” “Us”
slide-60
SLIDE 60

So what?

slide-61
SLIDE 61 That’s just the way that the organisation works
slide-62
SLIDE 62 Co-worker: We need to deliver this, despite being two weeks and $2,000 over budget? Boss: Well... ...we are where we are Commonly used in the business world, meaning "We are in the shit, but suck it up"...
slide-63
SLIDE 63 It’s all about the people, stupid
slide-64
SLIDE 64 Why Don’t We Learn!? http://www.infoq.com/presentations/Why-Dont-We-Learn
slide-65
SLIDE 65
slide-66
SLIDE 66 How do you get such teams to

learn

and

adopt

“modern software development practices”?
slide-67
SLIDE 67 Productivity ... or other motivations
slide-68
SLIDE 68 Director of a consulting company They’re a

challenging team

T h e y w
  • r
k i n a n a d h
  • c
m a n n e r , n
  • a
t t e n t i
  • n
t
  • d
e t a i l , e t c . . .
slide-69
SLIDE 69

Jèrriais

The native language of Jersey (a form of the Norman language)

shit

slide-70
SLIDE 70 The conclusion from an organisational review (after seven months!) The problems are caused by the

culture

slide-71
SLIDE 71 Any approach can work with

good people

slide-72
SLIDE 72

Every software development team needs a master builder

1 or many
slide-73
SLIDE 73 From chaos to self-organising Dedicated software architect Single point of responsibility for the technical aspects of the software project Everybody is a software architect Joint responsibility for the technical aspects of the software project The software architecture role Elastic Leadership (Roy Osherove) S u r v i v a l ( c
  • m
m a n d a n d c
  • n
t r
  • l
) , l e a r n i n g ( c
  • a
c h i n g ) , s e l f
  • r
g a n i s i n g ( f a c i l i t a t i
  • n
)
slide-74
SLIDE 74 Software architects should be

coaches and mentors

Explain the rationale and intent of decisions... S t r
  • n
g t e c h n i c a l l e a d e r s h i p b u t
  • p
e n t
  • i
d e a s . . .
slide-75
SLIDE 75 Be proactive and take the lead T a k e
  • w
n e r s h i p , r e s p
  • n
s i b i l i t y a n d l e a d b y e x a m p l e
slide-76
SLIDE 76 Software architect and project manager as peers Software Architect Project Manager Team Member Team Member Team Member
slide-77
SLIDE 77 How are you all? Anything I can do to help? Fancy some lunch? A little management
  • ften doesn’t hurt :-)
Account Manager
slide-78
SLIDE 78

Transparency, honesty and

  • penness
Take an iterative and incremental approach to all deliverables Be honest about progress!
slide-79
SLIDE 79
slide-80
SLIDE 80

Hiring

software people +
slide-81
SLIDE 81 Interviewer What was the last technical book that you read?
slide-82
SLIDE 82 Interviewer How do you keep up to date?
slide-83
SLIDE 83

1 hour?

slide-84
SLIDE 84 Depth Deep hands-on technology skills and knowledge Breadth Broad knowledge of patterns, designs, approaches, technologies, non-functional requirements ... Generalising Specialist
slide-85
SLIDE 85

GROW people

(technical and soft skills)
slide-86
SLIDE 86

360º

feedback

slide-87
SLIDE 87

Change

the model from “them and us”

to just “us”

slide-88
SLIDE 88 In The Brain of Linda Rising Who do You Trust? Beware of Your Brain http://skillsmatter.com/podcast/agile-scrum/who-do-you-trust-beware-of-your-brain
slide-89
SLIDE 89

Shared goals; win-win

No more “them” and “us” ... there is just “us”
slide-90
SLIDE 90 “Project as a Service” vs “Team as a Service” The traditional approach: “ w e w a n t X f
  • r
Y b y Z ” T h e a g i l e a p p r
  • a
c h : “ w e w a n t a t e a m t
  • d
e l i v e r b u s i n e s s v a l u e , a n d f a s t ”
slide-91
SLIDE 91 A mixed customer/ supplier team m e a n s c
  • n
s t a n t c r
  • s
s
  • t
r a i n i n g a n d t h e c u s t
  • m
e r r e t a i n s t h e a b i l i t y t
  • s
u p p
  • r
t / m a i n t a i n / e n h a n c e t h e s
  • l
u t i
  • n
Me
slide-92
SLIDE 92 Continuous improvement is
  • nly achievable if you have

sustainable competence

:-)
slide-93
SLIDE 93

educate

We have a duty to

simon.brown@codingthearchitecture.com @simonbrown on Twitter