SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
Large 24 / 7 systems and
Agile Soft. Dev.
Old story, new story, tips
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Gartner says…
• Bimodal IT is the future
- 2 distinct IT methodologies in the same
company
- “Agile IT” teams for fast-changing stuff
- “Traditional IT” for doing things right the first
time.
2
Euhmm……No!
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Large software projects
today
• ...are replacing something old for new.
• Many of them have single goal: Replace outdated
technology with new one.
• Many of them are huge investments with long
term promises of so called flexibility in future.
• ...and if your large project is none of these, then
you’re maybe creating a christmas tree.

Looks nice, but it is dead very soon.
• …or your project is small and delivers value
3
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Some nice False Dichotomies
(fallacy of the false alternative)
4
“You can’t simply start coding, therefore you always
have some up-front design.”
“Developers don’t care and are incapable of caring about
architecture, because they need to focus on coding”
“Agile / Scrum, that is something for frontend apps, not
for 24/7 business critical systems”
We need to
be more Agile
We need more
architecture
“Some things cannot and should not change”
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
The biggest problem in software
architecture is that we think we know
what we are doing.
5
Large software
6
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Large software projects today
7
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Large software projects today
8
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
9
Great Mosque of Djenné, Mali ruins
1828
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
10
Great Mosque of Djenné rebuilt
1895
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
11
Great Mosque of Djenné
1910
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
12
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
13
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
14
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
15
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
16
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
17
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
18
Everyone
is
involved
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
19
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
About 7 years ago...
20
Port of Rotterdam, Project HaMIS
1. Replace outdated traffic management system
2. Support the port of Rotterdam expansion
24/7 system for traffic management, transport,
environmental safety and crisis management.
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
New (as defined about 6 years ago)
21
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Lots of documents
22
Migration
Plan
Architecture
Vision
Operations
Vision
....
QA
Vision
Blueprint
Reference
data
Vision
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
23
100+
identified
use cases
Project Start
Architecture
Q&A
department
Architecture
with 4 layers &
6 subsystems
6
architects
800+
architectural
decisions
RUP and Scrum
but
BPEL
process
server
We just need...
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
24
1 Use Case in 6
months
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
(Re)Started
• Ship inspections process
• Little risk
• Significant business value
• Migration stuff completely postponed
• Agile / Scrum introduction
• One sprint later, useful functions delivered in
production
25
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
26
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Optimize the whole
27
Marketing
User /
Business
Requirements
gathering
Architectu
re
Planning
Analysis
Development
TestingDelivering
...has a
challenge
Lead
time
Department 1 Department 2 Department 3
Department 4
Department 5
Department 6
Department 7
Department 8
Agile team
Agile team
Agile team
Agile team
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Product Vision Box
28
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Self-designed teams
29
See
LeSS.works
if you want
to know
more
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Architecting
30
Open space
sessions
Knowledge
sharing
Documentation is Wiki
filled by “harvesting” the
knowledge
Standardization is
discovered and not
predefined
Just-in-time
just-enough
Continuous
refactoring towards
better design
Architecture principles:
Simplicity and design for change
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Business processes?
31
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Technical debt
32
So, did we paid this
debt back ???
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Continuous Architecting
33
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Things that matter
34
Multilayered Domain-
Driven
DesignSOA
SOAP
Frameworks
Micro-
services
Simplicity
Business-
driven
everything
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
What was my role?
35
Management:
”…but who is
accountable?”
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Welcome to double legacy
36
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Which path to choose?
• Should we do all reporting first in the new
system?
• Which part of the system should we replace first?
• How do we prevent a big bang?
• Where to start?
• We followed ships in harbour!
37
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
38
Any decision that can be
postponed is postponed
...also the migration path
…but, this is not easy
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Migration = Strangulation
39
HaMIS (new)IVS (old)
User
Business
event 1
Business
event 1
Business
event 2
Business
event 2
data not yet managed in HaMIS
"The most important reason to consider a strangler application over a
cut-over rewrite is reduced risk.” - Martin Fowler, StranglerApplication
24/7 system Every 2 weeks
in production
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
We banned terms:
Generic or Reusable
on every level
40
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
We banned premature
generalisation
41
Why Windows 10 instead 9 ???
“Microsoft dev here, the internal rumours are that
early testing revealed just how many third party
products that had code of the form
if(version.StartsWith("Windows 9")) { /
* 95 and 98 */ } else {
and that this was the pragmatic solution to avoid that.”
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Aren’t you creating a mess?
• One team delivers the simplest possible solution
• Another team delivers another similar even
simpler possible solution :-)
• ...and maybe third one.
• Then, we get together and talk about what you
learned and which one is really the best in this
context.
42
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Examples
• Data model with production data is gradually
extended and continually refactored
• IBM Websphere replaced by JBoss
• User interface redesigned 2 or more times
• SOAP replaced by binary Hessian
• Core domain model concepts (gradually)
redesigned: inspection checklist, vessel visit vs.
vessel
43
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Lessons learned
• Never stop delivering business value.
• Deal with migration gradually / strangulation
• Everything in software can be soft even data /
domain model!
• Trust in business / context driven approach above
standard / generic solutions
• Involve everyone to solve complex problems
• Don’t get stuck in complexities of architectural
B.S.
44
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
6 years later
45
Then
6 months delivery time for large
features
“Documents”-based collaboration
business / IT
Dedicated operations team - 6
people + on average 5 developers
fixing issues full time
Many architects, analysts, QA,
“coordinators”
Very displeased business
Now
More than 100 sprints every 2 weeks
new features / intensive
collaboration
No dedicated operations team
Production issues involving code
change solved in 1 hour!
One of 4 development teams
responsible for operations, 30% of
time actually spend on operations.
Architects, analysts, QA, OPs,… part
of cross-functional teams
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
46
“Everybody, all together, early on”
James O. Coplien
Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works
Want to know more?:
less.works
Blog: leanarch.eu
Tomorrow:
Collaborative Visualisation
workshop
47

Mais conteúdo relacionado

Destaque

Pautas importantes para el desarrollo de trabajos colaborativos
Pautas importantes para el desarrollo de trabajos colaborativosPautas importantes para el desarrollo de trabajos colaborativos
Pautas importantes para el desarrollo de trabajos colaborativos
Anderson Lozada
 
3 1000596 philips lamps & gears catalog
3 1000596 philips lamps & gears catalog3 1000596 philips lamps & gears catalog
3 1000596 philips lamps & gears catalog
busoco1
 
La comunicacion anibal lagua
La comunicacion anibal laguaLa comunicacion anibal lagua
La comunicacion anibal lagua
Angel Lagua
 
Aplicaciones colombianas tipo exportación xile nico
Aplicaciones colombianas tipo exportación xile nicoAplicaciones colombianas tipo exportación xile nico
Aplicaciones colombianas tipo exportación xile nico
JABC980301
 
Madagascar Sales Manuel 1
Madagascar Sales Manuel 1Madagascar Sales Manuel 1
Madagascar Sales Manuel 1
Neel Inamdar
 
Fisiología cardiovascular
Fisiología cardiovascularFisiología cardiovascular
Fisiología cardiovascular
anestesiahsb
 

Destaque (18)

Jonathan Braddick - Architect Devon
Jonathan Braddick - Architect DevonJonathan Braddick - Architect Devon
Jonathan Braddick - Architect Devon
 
Pautas importantes para el desarrollo de trabajos colaborativos
Pautas importantes para el desarrollo de trabajos colaborativosPautas importantes para el desarrollo de trabajos colaborativos
Pautas importantes para el desarrollo de trabajos colaborativos
 
Wizard gatekeeper version_libre_mpizzanelli
Wizard gatekeeper version_libre_mpizzanelliWizard gatekeeper version_libre_mpizzanelli
Wizard gatekeeper version_libre_mpizzanelli
 
26393 disenolosas
26393 disenolosas26393 disenolosas
26393 disenolosas
 
MÉTODOS DE PROMEDIO
MÉTODOS DE PROMEDIOMÉTODOS DE PROMEDIO
MÉTODOS DE PROMEDIO
 
Estrategias de promocion
Estrategias de promocionEstrategias de promocion
Estrategias de promocion
 
3 1000596 philips lamps & gears catalog
3 1000596 philips lamps & gears catalog3 1000596 philips lamps & gears catalog
3 1000596 philips lamps & gears catalog
 
Salud mental y TEA.Trastornos psiquiátricos y diagnóstico diferencial
Salud mental y TEA.Trastornos psiquiátricos y diagnóstico diferencialSalud mental y TEA.Trastornos psiquiátricos y diagnóstico diferencial
Salud mental y TEA.Trastornos psiquiátricos y diagnóstico diferencial
 
El Discipulado
El DiscipuladoEl Discipulado
El Discipulado
 
CV
CVCV
CV
 
La comunicacion anibal lagua
La comunicacion anibal laguaLa comunicacion anibal lagua
La comunicacion anibal lagua
 
Arne Schoenleben (innovation.rocks) The AR & VR Tool of the Future
Arne Schoenleben (innovation.rocks) The AR & VR Tool of the FutureArne Schoenleben (innovation.rocks) The AR & VR Tool of the Future
Arne Schoenleben (innovation.rocks) The AR & VR Tool of the Future
 
Aplicaciones colombianas tipo exportación xile nico
Aplicaciones colombianas tipo exportación xile nicoAplicaciones colombianas tipo exportación xile nico
Aplicaciones colombianas tipo exportación xile nico
 
Manual Jazler 2.3.2 EL MEJOR MANUAL PRACTICO A TODO COLOR
Manual Jazler 2.3.2 EL MEJOR MANUAL PRACTICO A TODO COLORManual Jazler 2.3.2 EL MEJOR MANUAL PRACTICO A TODO COLOR
Manual Jazler 2.3.2 EL MEJOR MANUAL PRACTICO A TODO COLOR
 
GPE_Corporate_Brochure_2016
GPE_Corporate_Brochure_2016GPE_Corporate_Brochure_2016
GPE_Corporate_Brochure_2016
 
Madagascar Sales Manuel 1
Madagascar Sales Manuel 1Madagascar Sales Manuel 1
Madagascar Sales Manuel 1
 
Semantics 2
Semantics 2Semantics 2
Semantics 2
 
Fisiología cardiovascular
Fisiología cardiovascularFisiología cardiovascular
Fisiología cardiovascular
 

Mais de AHAConference

What is business model
What is business modelWhat is business model
What is business model
AHAConference
 
一个互联网产品的成长史
一个互联网产品的成长史一个互联网产品的成长史
一个互联网产品的成长史
AHAConference
 
What is business model
What is business modelWhat is business model
What is business model
AHAConference
 
Tdd thats-not-what-we-meant
Tdd thats-not-what-we-meantTdd thats-not-what-we-meant
Tdd thats-not-what-we-meant
AHAConference
 
互联网产品演进中的组织适应
互联网产品演进中的组织适应互联网产品演进中的组织适应
互联网产品演进中的组织适应
AHAConference
 
Odde conference effectiveteamv5-sc-1
Odde conference effectiveteamv5-sc-1Odde conference effectiveteamv5-sc-1
Odde conference effectiveteamv5-sc-1
AHAConference
 

Mais de AHAConference (14)

翻转组织
翻转组织翻转组织
翻转组织
 
代码的用户体验
代码的用户体验代码的用户体验
代码的用户体验
 
白日梦飞行地图
白日梦飞行地图白日梦飞行地图
白日梦飞行地图
 
What is business model
What is business modelWhat is business model
What is business model
 
What is business model
What is business modelWhat is business model
What is business model
 
精益产品开发实例
精益产品开发实例精益产品开发实例
精益产品开发实例
 
一个互联网产品的成长史
一个互联网产品的成长史一个互联网产品的成长史
一个互联网产品的成长史
 
Agile organization design workshop
Agile organization design workshopAgile organization design workshop
Agile organization design workshop
 
What is business model
What is business modelWhat is business model
What is business model
 
Tdd thats-not-what-we-meant
Tdd thats-not-what-we-meantTdd thats-not-what-we-meant
Tdd thats-not-what-we-meant
 
Mc aha-20150416
Mc aha-20150416Mc aha-20150416
Mc aha-20150416
 
互联网产品演进中的组织适应
互联网产品演进中的组织适应互联网产品演进中的组织适应
互联网产品演进中的组织适应
 
Nmonecis aha
Nmonecis   ahaNmonecis   aha
Nmonecis aha
 
Odde conference effectiveteamv5-sc-1
Odde conference effectiveteamv5-sc-1Odde conference effectiveteamv5-sc-1
Odde conference effectiveteamv5-sc-1
 

Large 24 7 systems and agile soft dev - shanghai aha conference

  • 1. Large 24 / 7 systems and Agile Soft. Dev. Old story, new story, tips
  • 2. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Gartner says… • Bimodal IT is the future - 2 distinct IT methodologies in the same company - “Agile IT” teams for fast-changing stuff - “Traditional IT” for doing things right the first time. 2 Euhmm……No!
  • 3. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Large software projects today • ...are replacing something old for new. • Many of them have single goal: Replace outdated technology with new one. • Many of them are huge investments with long term promises of so called flexibility in future. • ...and if your large project is none of these, then you’re maybe creating a christmas tree.
 Looks nice, but it is dead very soon. • …or your project is small and delivers value 3
  • 4. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Some nice False Dichotomies (fallacy of the false alternative) 4 “You can’t simply start coding, therefore you always have some up-front design.” “Developers don’t care and are incapable of caring about architecture, because they need to focus on coding” “Agile / Scrum, that is something for frontend apps, not for 24/7 business critical systems” We need to be more Agile We need more architecture “Some things cannot and should not change”
  • 5. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works The biggest problem in software architecture is that we think we know what we are doing. 5
  • 7. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Large software projects today 7
  • 8. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Large software projects today 8
  • 9. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 9 Great Mosque of Djenné, Mali ruins 1828
  • 10. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 10 Great Mosque of Djenné rebuilt 1895
  • 11. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 11 Great Mosque of Djenné 1910
  • 12. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 12
  • 13. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 13
  • 14. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 14
  • 15. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 15
  • 16. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 16
  • 17. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 17
  • 18. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 18 Everyone is involved
  • 19. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 19
  • 20. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works About 7 years ago... 20 Port of Rotterdam, Project HaMIS 1. Replace outdated traffic management system 2. Support the port of Rotterdam expansion 24/7 system for traffic management, transport, environmental safety and crisis management.
  • 21. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works New (as defined about 6 years ago) 21
  • 22. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Lots of documents 22 Migration Plan Architecture Vision Operations Vision .... QA Vision Blueprint Reference data Vision
  • 23. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 23 100+ identified use cases Project Start Architecture Q&A department Architecture with 4 layers & 6 subsystems 6 architects 800+ architectural decisions RUP and Scrum but BPEL process server We just need...
  • 24. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 24 1 Use Case in 6 months
  • 25. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works (Re)Started • Ship inspections process • Little risk • Significant business value • Migration stuff completely postponed • Agile / Scrum introduction • One sprint later, useful functions delivered in production 25
  • 26. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 26
  • 27. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Optimize the whole 27 Marketing User / Business Requirements gathering Architectu re Planning Analysis Development TestingDelivering ...has a challenge Lead time Department 1 Department 2 Department 3 Department 4 Department 5 Department 6 Department 7 Department 8 Agile team Agile team Agile team Agile team
  • 28. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Product Vision Box 28
  • 29. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Self-designed teams 29 See LeSS.works if you want to know more
  • 30. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Architecting 30 Open space sessions Knowledge sharing Documentation is Wiki filled by “harvesting” the knowledge Standardization is discovered and not predefined Just-in-time just-enough Continuous refactoring towards better design Architecture principles: Simplicity and design for change
  • 31. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Business processes? 31
  • 32. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Technical debt 32 So, did we paid this debt back ???
  • 33. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Continuous Architecting 33
  • 34. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Things that matter 34 Multilayered Domain- Driven DesignSOA SOAP Frameworks Micro- services Simplicity Business- driven everything
  • 35. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works What was my role? 35 Management: ”…but who is accountable?”
  • 36. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Welcome to double legacy 36
  • 37. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Which path to choose? • Should we do all reporting first in the new system? • Which part of the system should we replace first? • How do we prevent a big bang? • Where to start? • We followed ships in harbour! 37
  • 38. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 38 Any decision that can be postponed is postponed ...also the migration path …but, this is not easy
  • 39. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Migration = Strangulation 39 HaMIS (new)IVS (old) User Business event 1 Business event 1 Business event 2 Business event 2 data not yet managed in HaMIS "The most important reason to consider a strangler application over a cut-over rewrite is reduced risk.” - Martin Fowler, StranglerApplication 24/7 system Every 2 weeks in production
  • 40. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works We banned terms: Generic or Reusable on every level 40
  • 41. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works We banned premature generalisation 41 Why Windows 10 instead 9 ??? “Microsoft dev here, the internal rumours are that early testing revealed just how many third party products that had code of the form if(version.StartsWith("Windows 9")) { / * 95 and 98 */ } else { and that this was the pragmatic solution to avoid that.”
  • 42. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Aren’t you creating a mess? • One team delivers the simplest possible solution • Another team delivers another similar even simpler possible solution :-) • ...and maybe third one. • Then, we get together and talk about what you learned and which one is really the best in this context. 42
  • 43. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Examples • Data model with production data is gradually extended and continually refactored • IBM Websphere replaced by JBoss • User interface redesigned 2 or more times • SOAP replaced by binary Hessian • Core domain model concepts (gradually) redesigned: inspection checklist, vessel visit vs. vessel 43
  • 44. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Lessons learned • Never stop delivering business value. • Deal with migration gradually / strangulation • Everything in software can be soft even data / domain model! • Trust in business / context driven approach above standard / generic solutions • Involve everyone to solve complex problems • Don’t get stuck in complexities of architectural B.S. 44
  • 45. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 6 years later 45 Then 6 months delivery time for large features “Documents”-based collaboration business / IT Dedicated operations team - 6 people + on average 5 developers fixing issues full time Many architects, analysts, QA, “coordinators” Very displeased business Now More than 100 sprints every 2 weeks new features / intensive collaboration No dedicated operations team Production issues involving code change solved in 1 hour! One of 4 development teams responsible for operations, 30% of time actually spend on operations. Architects, analysts, QA, OPs,… part of cross-functional teams
  • 46. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 46 “Everybody, all together, early on” James O. Coplien
  • 47. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Want to know more?: less.works Blog: leanarch.eu Tomorrow: Collaborative Visualisation workshop 47