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
180
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
950
Failure is not an Option. Error handling strategies for Kotlin programs
npryce
0
550
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
410
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3k
What we talk about when we talk about software
npryce
3
380
Why software changes & how we must change what we change when we change software
npryce
1
270
What we talk about when we talk about software
npryce
1
670
Having Our Cake and Eating It
npryce
4
1.2k
Other Decks in Programming
See All in Programming
私のEbitengineの第一歩
qt_luigi
0
450
Lessons by WebAssembly app in production on CDN Edge Computing Service
tetsuharuohzeki
0
210
Why Prism?
kddnewton
4
1.7k
【TID2024】模擬講義:プログラマと一緒にゲームをデザインしてみよう!
akatsukigames_tech
0
660
XStateでReactに秩序を与えたい
gizm000
0
730
Regular Expressions, REXML, Automata Learning
makenowjust
0
220
Go1.23で入った errorsパッケージの小さなアプデ
kuro_kurorrr
2
390
Developer Joy == Developer Productivity (really!)
hollycummins
1
220
KSPの導入・移行を前向きに検討しよう!
shxun6934
PRO
0
280
What is Parser
yui_knk
9
4.1k
Desafios e Lições Aprendidas na Migração de Monólitos para Microsserviços em Java
jessilyneh
2
150
Amazon BedrockでサーバレスなAIお料理ボットを作成する!!
tosuri13
0
230
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
450k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
5
480
Ruby is Unlike a Banana
tanoku
96
11k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
1
53
Mobile First: as difficult as doing things right
swwweet
221
8.8k
Building an army of robots
kneath
302
42k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
Side Projects
sachag
451
42k
Code Review Best Practice
trishagee
62
16k
Making the Leap to Tech Lead
cromwellryan
128
8.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
25
3.9k
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