Services at lower level provides more specific functionality down to fundamental utility services such as
I/O services, transaction, scheduling, security services, etc.
"-------------------------"
Middle layers provide more domain dependent functions such as
Business logic, core processing, etc.
"-------------------"
Upper layers provide more abstract functionality in the form of user interfaces such as
Command line interpreter, GUI, Shell programming
"-------------------"
Plus Point: Any changes to a specific layer may affect only its adjacent upper layers.So, no ripple effects of change