...

Automated communication for improved deliveries Lars Bendix

by user

on
Category: Documents
12

views

Report

Comments

Transcript

Automated communication for improved deliveries Lars Bendix
Automated communication
for
improved deliveries
Lars Bendix
[email protected]
Department of Computer Science
Lund University
Sweden
© Lars Bendix
BCS-CMSG, June 10, 2014
The DevOps dream
Dev
© Lars Bendix
Ops
BCS-CMSG, June 10, 2014
DevOps realities
B
A
C
Customer
Req.
Ops.
handover
© Lars Bendix
BCS-CMSG, June 10, 2014
Why do you want to do DevOps?
• 
• 
• 
What can you learn from our students?
• 
• 
© Lars Bendix
BCS-CMSG, June 10, 2014
Context
Our students – since 2001:
•  second year students
•  groups of 8-12 developers
•  two coaches (fourth year students)
•  one customer (to share between three teams)
•  agile development (eXtreme Programming)
•  course part and project part
© Lars Bendix
BCS-CMSG, June 10, 2014
Setup
Six weekly iterations:
•  2-hour Planning Game on Wednesdays
•  4 hours of individual/pair work
•  8-hour programming session on Mondays
•  release to customer every other week (+1)
•  using all XP practices:
•  Frequent Releases (“DevOps”)
•  Continuous Integration
•  Test Driven Development
•  something more
© Lars Bendix
BCS-CMSG, June 10, 2014
Real life
Can our students do:
•  DevOps?
•  Continuous Delivery?
•  Frequent Releases?
•  On-demand releases?
•  Anything at all? ;-)
© Lars Bendix
BCS-CMSG, June 10, 2014
Bottlenecks and more
Customer
Story
Kanban
…
Ops.
DoneDone
gets integrated in the
codebase here
Customer
Req.
Ops.
Done – DoneDone – ReallyDone - …
© Lars Bendix
BCS-CMSG, June 10, 2014
Parallel work
X
X
X
X
X
X
X
© Lars Bendix
BCS-CMSG, June 10, 2014
Parallel strategies
Branching and merging
vs.
Change sets
vs.
Strict long transactions
© Lars Bendix
BCS-CMSG, June 10, 2014
Why look at DevDev?
High quality allows us to go from Dev to Ops in a
nanosecond – and with probable success.
To create a good start for DevOps.
© Lars Bendix
BCS-CMSG, June 10, 2014
Situational awareness
Digital data means:
•  copies and parallel work
•  merge
Easing merge:
•  locking
•  (stable and traceable) APIs
•  (decoupled) modularization
•  strict long transactions
•  (VCT) notification
•  “virtual continuous integration”
© Lars Bendix
BCS-CMSG, June 10, 2014
Virtual Continuous Integration
?
© Lars Bendix
BCS-CMSG, June 10, 2014
What did you learn today?
Take-away #1: avoid bottlenecks – plan for scalability
Take-away #2: deal with parallellism – branching / change sets
Take-away #3: DevOps looks like TDD
Take-away #4: …
© Lars Bendix
BCS-CMSG, June 10, 2014
Fly UP