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
200
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
3
1.2k
Failure is not an Option. Error handling strategies for Kotlin programs
npryce
0
640
Taking the Tiger by the Tail, P3X 2019
npryce
1
230
What we talk about when we talk about software, Agile Turkey Summit 2019
npryce
2
450
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3.5k
What we talk about when we talk about software
npryce
3
410
Why software changes & how we must change what we change when we change software
npryce
1
310
What we talk about when we talk about software
npryce
1
710
Having Our Cake and Eating It
npryce
4
1.5k
Other Decks in Programming
See All in Programming
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
580
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
7
2.9k
AHC061解説
shun_pi
0
410
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
230
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
270
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
360
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
230
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
230
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
150
Java 21/25 Virtual Threads 소개
debop
0
240
Rethinking API Platform Filters
vinceamstoutz
0
140
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
380
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
840
The Mindset for Success: Future Career Progression
greggifford
PRO
0
280
It's Worth the Effort
3n
188
29k
Prompt Engineering for Job Search
mfonobong
0
210
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
How to build a perfect <img>
jonoalderson
1
5.3k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
280
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.5k
My Coaching Mixtape
mlcsv
0
83
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Docker and Python
trallard
47
3.8k
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