You Can't be Agile When You Are Knee-Deep in Mud


The Presentation inside:

Slide 0

@rachellaycock YOU CAN’T BE AGILE When you are knee deep in mud


Slide 1

2


Slide 2

I WANT CONTINUOUS DELIVERY Architecture Quality Assurance Continuous Integration Configuration Management Data Management Environments & Deployment 3


Slide 3

WHERE ARE WE? 4


Slide 4

AGILE THE ADJECTIVE 5


Slide 5

FLUENCY MODEL 6


Slide 6

IT’S THE 90S 7


Slide 7

SCRUM 8 http://upload.wikimedia.org/wikipedia/commons/thumb/5/58/Scrum_process.svg/2000px-Scrum_process.svg.png


Slide 8

XP 9 http://ronjeffries.com/xprog/what-is-extreme-programming/circles.jpg


Slide 9

TDD? 10 http://luizricardo.org/wordpress/wp-content/upload-files/2014/05/tdd_flow.gif


Slide 10

SELF TESTING CODE 11 http://www.focus-itoutsourcing.com/wp-content/uploads/2013/10/Software-testing-trends-2013.jpg


Slide 11

TESTING CUPCAKE 12


Slide 12

REFACTORING Refactoring is a controlled technique for improving the design of an existing code base. 13 http://martinfowler.com/books/refactoring.html


Slide 13

CONTINUOUS INTEGRATION 14 http://ronjeffries.com/xprog/what-is-extreme-programming/circles.jpg


Slide 14

CONTINUOUS INTEGRATION Local Develop Workstation Mainline Server Everyone Commits To Build pull the Mainline Every Day ✔ Build Build push Done! 15


Slide 15

WATER - SCRUM - FALL 16


Slide 16

CONTINUOUS DELIVERY Customer Delivery team Constant flow of new features into production Software always production ready Releases tied to business needs, not operational constraints 17


Slide 17

MORE THAN JUST DEVOPS Organisational Alignment Release Management Architecture Quality Assurance Continuous Integration Configuration Management Data Management Environments & Deployment 18


Slide 18

BALLS OF MUD 19


Slide 19

Reckless “We don’t have time for design” Deliberate Inadvertent “What’s Layering?” Prudent “We must ship now and deal with consequences”


Slide 20

Good Design Cumulative Functionality No Design Design Payoff Line time


Slide 21

Reckless “We don’t have time for design” Prudent “We must ship now and deal with consequences” Deliberate Inadvertent “What’s Layering?” “Now we know how we should have done it”


Slide 22

QUALITY ISSUES (TECHNICAL) Code quality Design quality Automated testing Technical debt reduction BLAH BLAH BLAH …is what your business partners hear! 23


Slide 23

HISTORICAL DILEMMA FEATURES QUALITY Business Outcome Technical Outcome 24


Slide 24

WHAT IF? FEATURES ? Business Outcome Business Outcome 25


Slide 25

WHAT IF? FEATURES CYCLE TIME Business Outcome Business Outcome 26


Slide 26

CAN’T JUST LIFT AND SHIFT 27


Slide 27

REPLACING THE MONOLITH 28


Slide 28

MICROSERVICES A monolithic application puts all its functionality into a single process… A microservices architecture puts each element of functionality into a separate service… … and scales by replicating the monolith on multiple servers … and scales by distributing these services across servers, replicating as needed. 29


Slide 29

REFACTORING 30


Slide 30

COMPONENTS Components are units of software that can be independently replaced and upgraded Component Libraries and Services are two forms of component Library Libraries run within a single process, communicating through language function call mechanisms Service Services run in separate processes, communicating with networking mechanisms such as HTTP or TCP/IP 31


Slide 31

COUPLING AND COHESION code artifact afferent efferent 32


Slide 32

FROM PROJECTS BUSINESS PROJECTS OPERATIONS Many ‘good’ ideas WE NEED $$$! We’re working GIVE US $$$! That doesn’t work NEED MORE $$$! Humble, Molesky, O’Reilly, Lean Enterprise: How High Performance Organizations Innovate At Scale 33


Slide 33

TO PRODUCTS PRODUCTS / SERVICES OPERATIONS Ops Management Service Desk Infrastructure / 
 Platform-As-A-Service Customers Cross-Functional
 Product Teams Product Teams for IaaS / PaaS Teams Push
 Changes Continuously Humble, Molesky, O’Reilly, Lean Enterprise: How High Performance Organizations Innovate At Scale 34


Slide 34

YOU NEED TO BE THIS TALL TO BE AGILE 35


Slide 35

THANK YOU @rachellaycock


Slide 36


×

HTML:





Ссылка: