Extreme delivery: The real measure of progress is… Johannes Brodwall Exilesoft Chief scientist @jhannes.
Post on 01-Apr-2015
219 Views
Preview:
Transcript
Extreme delivery:The real measure of
progress is…Johannes Brodwall
Exilesoft Chief scientist
@jhannes
• What• Demo• How
Part I
Avoid the pain of delay
Continuous integration
Continuous integrationdeployment
Pay nowOR
Pay more later
Continuous integrationdeploymentdelivery
Pay now
OR
Pay more later
The big merge
Have you ever…
Have you ever…
… discarded weeks of work
Limit branches
Limit “branches”
Limit “branches”• un-commited code
• branches
Release frequently
Daily?
Every commit?
Green master tip
Limited RED workspace
Limited RED
A way of thinking
Part II
Getting your code out there
Example Heroku
First deploy
(15 minutes)
Database
Elements of continuous deploy
One command to deploy
(Often triggered by checkin)
(Often triggered by checkin)
(not needed with Heroku)
Don’t check in bins or deps
DB migrations
Part III
How?
Think in complete flows
1. HR admin logs in via Exilesoft SSO (same for the other stakeholders)
2. HR admin navigates to MyLeave
3. HR admin allocates leave quotas based on information in HR database
4. HR admin builds company calendar
5. HR admin adjusts the leave quota for an individual user in HR system
6. HR admin assigns leave approvers from uses in HR system
7. Employee views their available leave
8. Employee submits leave request
9. MyLeave notifies Team leader of a new pending leave request via email
10. Team leader or delivery manager views pending leave applications
11. Team leader or delivery manager checks the other leaves in the same time period
12. Team leader or PMO approves leave
13. MyLeave notifies Employee of an update of his leave request via email
14. Employee checks status of own leave application
15. Employee cancels own leave
16. PMO views the teams' leave calendar, plans and history
17. PMO may cancel leave if necessary
Simple, but complete, then…
Simple, but complete, then…
improve
Simple, but complete, then…
improve
improve
Simple, but complete, then…
improve
improve
improve
The 1 most powerful idea
The 1 most powerful idea
Feature toggle
It’s there, it’s just…
It’s there, it’s just…
It’s there, it’s just…
not in the menu
It’s there, it’s just…
hidden
It’s there, it’s just…
hidden@if (Model.ShowChangeUserNameOption) {
@Html.Partial(MVC.Profile.Views._ChangeUserNameVm, Model.UserNameVm)}
It’s there, it’s just…
Configured to use the old version
It’s there, it’s just…
Restricted for everyone
It’s there, it’s just…
Backend
/rush/v1/projects
/rush/v2/projects
Database views
Updateable Database views
Giving value for work
Cloud deployment• Heroku
• Azure
Pay now
OR
Pay more later
Feature toggles
jbr@exilesoft.com
http://JohannesBrodwall.comhttp://exilesoft.com
http://twitter.com/jhannes
Thank you
top related