Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Reengineering
Search
Nat Pryce
January 22, 2017
Programming
0
190
Reengineering
A case study presented to 4th year students at Imperial College
Nat Pryce
January 22, 2017
Tweet
Share
More Decks by Nat Pryce
See All by Nat Pryce
Mistakes we made adopting event sourcing (and how we recovered)
npryce
2
1k
Failure is not an Option. Error handling strategies for Kotlin programs
npryce
0
580
Taking the Tiger by the Tail, P3X 2019
npryce
1
210
What we talk about when we talk about software, Agile Turkey Summit 2019
npryce
2
420
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3.1k
What we talk about when we talk about software
npryce
3
390
Why software changes & how we must change what we change when we change software
npryce
1
280
What we talk about when we talk about software
npryce
1
680
Having Our Cake and Eating It
npryce
4
1.3k
Other Decks in Programming
See All in Programming
iOSエンジニアから始める visionOS アプリ開発
nao_randd
3
130
技術を根付かせる / How to make technology take root
kubode
1
250
ソフトウェアエンジニアの成長
masuda220
PRO
10
1.1k
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
370
時計仕掛けのCompose
mkeeda
1
300
Rails アプリ地図考 Flush Cut
makicamel
1
120
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
120
Pulsar2 を雰囲気で使ってみよう
anoken
0
240
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.8k
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
2
280
Ruby on cygwin 2025-02
fd0
0
140
Pythonでもちょっとリッチな見た目のアプリを設計してみる
ueponx
1
560
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.4k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Site-Speed That Sticks
csswizardry
4
380
Embracing the Ebb and Flow
colly
84
4.6k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
KATA
mclloyd
29
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
Reengineering Evolution, Devolution & Revolution Nat Pryce @natpryce | natpryce.com
|
[email protected]
Quoting
Grand vision APAC EMEA US
Original architecture
Attempted optimisation
Parallelise calculations for APAC APAC EMEA
Start refactoring, but don't finish APAC EMEA
A new feature for EMEA APAC EMEA
Reports for APAC APAC EMEA
Diagnosing problems
The system was modelled on a manual, paper-based process
Idealised architecture
Separate the projects
"Cuckoo's Egg" application behind gateway
HTTP data service "simplicators"
"Pregression" tests
Fake simplicators in system tests
Introduce an acceptance test driven process
Replace the GUI with a web application
Continual indicative quoting is just a client
Caching proxies for performance and scaling
None
Lines of Code Over Time