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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Nat Pryce
January 22, 2017
Programming
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Reengineering
A case study presented to 4th year students at Imperial College
Nat Pryce
January 22, 2017
More Decks by Nat Pryce
See All by Nat Pryce
Mistakes we made adopting event sourcing (and how we recovered)
npryce
3
1.2k
Failure is not an Option. Error handling strategies for Kotlin programs
npryce
0
660
Taking the Tiger by the Tail, P3X 2019
npryce
1
260
What we talk about when we talk about software, Agile Turkey Summit 2019
npryce
2
490
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3.5k
What we talk about when we talk about software
npryce
3
460
Why software changes & how we must change what we change when we change software
npryce
1
350
What we talk about when we talk about software
npryce
1
730
Having Our Cake and Eating It
npryce
4
1.5k
Other Decks in Programming
See All in Programming
freeeにおけるEvalsの実践例の紹介
freee
PRO
0
160
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
580
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
430
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
190
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
510
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
5
1.8k
T3DD26: From RAGs to Riches
martinhelmich
0
120
Deep dive into the select statement (GopherCon UK)
jespino
0
150
不幸な GC
chencmd
0
820
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
790
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
290
React本体のコードリーディング
high_g_engineer
1
160
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
800
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
360
Abbi's Birthday
coloredviolet
3
9.6k
Site-Speed That Sticks
csswizardry
13
1.5k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
420
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
500
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
210
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
260
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
BBQ
matthewcrist
89
10k
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