Friday, 5 August 2011

Syzzzztem Architecture..zzzzimplified !!

It was a Sunday morning....Yes, a long awaited Sunday. I was still waiting for the alarm to wake me up after having put in on snooze 7 times (My cell allows me to do it 10 times...3 still to go :-P ), when my friend Aakash called me up.  I wished I had a snooze option for this as well; I didn't want to cut it, after all, it was my best friend's call. So I pushed myself and picked up the call.

Aakash : Hi !! How you doing ???
Me : Hey...Hi Aakash...I'm good yaar....Hows life?
 
Aakash : Don't you think you are forgetting something. Today is a special day.
Me : (ohh...Is it his birthday today?? Did I miss it again??? Quickly checked my Calendar....It's not..relieved!! Got it. Friendship day it is.) Happy Friendship Day :-) 
Aakash : You got it right..Happy Friendship day buddy !!

Me : So, what are your plans for today...party???
Aakash : I'm not that lucky. Actually we have a party planned for tonight, but I guess I won't be able to join. Have to conduct a small session on System Architecture for new trainees in my unit tomorrow; will need to study for that. I have studied a bit about it during my engineering days, but don't remember much.

Me : You 'are' that lucky, Aakash. I attended an insightful lecture on System Architecture couple of days back. I can give you an idea of what it is all about. I just need a 5 Star next time we meet :-)
Aakash : That would be great. And 5 star...hmmm..I hope a small one will do :-P
Let's begin then. Quickly, what exactly does system architecture refer to?

Me : System Architecture deals with the arrangement of data and applications inside a computer or a network of computers. Now let me tell you about data and application, both of which together comprise an Information System.
Data describes 'what' is to be processed, and application specifies 'how' it is to be processed.
For example, when you work on a software, say MS Word, you are actually working on two things - an application and the data. Application is the software (winword.exe) you work on and data is the .doc or .docx files that you create. 
When you have both - the data and the application - at one machine, like in case of your laptop or desktop, you call it a single-tier architecture.

Aakash : This is good stuff. I can relate it to what I do in practice. So, do we have a two-tier architecture as well?
Me : Absolutely. In a two tier system the data would reside on the server using any of the database management system like Oracle/Mysql etc, while the application would reside on the local machine. The business logic, as well as the presentation logic, which is the GUI part of it, reside on the same machine. The local machine connects to the server through the Local Area Network (LAN) using the TCP/IP protocol, which is basically a set of rules.


The next level is a three-tier architecture.  Here, the application is partitioned. The business logic is kept centrally, so that changes to the business logic can be done at a single location. The presentation logic, on the other hand, is kept on the local machine. This ensures that data transfer over the network is minimized.
On the same lines, we have a multi-tier architecture. The Internet is an example of multi-tier architecture, with the logic distributed across several layers.

Aakash : That was insightful, indeed. I guess this should be enough for now. Hope they don't come up with too many doubts. Thanks a lot Aayush.
Me : My pleasure. After all, I've just earned myself a 5 Star :-)
   
Aakash : Definitely. Now I can go and enjoy the party. I also need to carry my music system to the venue. 

Music...zzzz...Music..zzzz...I can already hear some. It's the alarm ringing...for the 11th and the last time. Oh God !! Was I dreaming?? Yes, I was.
To my horror, it's not a Sunday morning, it's Monday !! I'll have to skip my breakfast yet again and rush to attend an MIS lecture at VGSOM !!