computing and design

Computing and Design

Session - 1

Complexity

sources of complexity

Coping with complexity

example
no. of lines ( N) ~ no. of bugs
N - 100 lines code - 100 Bug
to find 1 Bug, need to read N lines ( for finding 1 bug, - read 100 lines, )
100 bugs - 100 * 100 = 10000 times - N2

Dividing code into K Modules - auth, user, product, demo, config, K = 5 Modules
eg: bug in auth, no. of lines to read is - N/K = 100/5 = 20 lines

debugging time


date: 31/01/2025

Abstraction

Layering

Hierarchy

Why Modularity, Abstraction, Layering, and Hierarchy Aren't Enough

Iteration in System Design