Sunday, 5 August 2012

System Architecture - In Layman's Lingo

2230 hours. My mobile rings and the caller name flashed is 'Java Officer'(ironically!) . He is my friend, Harish, from Pondicherry. I had forgotten him for one complete week, after getting myself entangled into usual hectic schedules of an MBA Course. 'Oh God, now he is gonna kill me for not calling', I thought. Fearing that, I picked up. Much to my astonishment, he forgave me quickly and after some routine questions, took a turn discussing about my course. I answered his questions about how was Kharagpur, the campus and girls in my class(!). Later, he asked about the subjects and he was surprised to know that still I had to study IT-related subjects. To think so was not a mistake on his side, as I was an IT student in my UG too and he was curious to know reason why it was there even now. Then I explained him the significance and he started asking more about it. What, Why, How, etc. Being a only MBA student as of now from my UG batch, I felt proud and started explaining to him. I was sure to make it simple as he was from non-IT branch. Here goes our conversation for next few minutes:

Why do you call it as 'System Architecture' and not 'Computer Architecture'? Then, tell me what is a system?

As for Computer Science is concerned, the term Computer Architecture is fine. But now, the level of concretion is more and called Information Systems Engineering, the term System Architecture is more appropriate. A system is nothing but an interacting or independent components forming an integrated whole. In this way, a computer is also a system.

Ok, why do we need to study its architecture?

Firstly, architecture is simply a represtation - a way of symbolising things. Its more like drawing all individual components and knowing their interactions. It has two major ideas.

What are they?

Arey yaar. I am telling na, Listen to me hai na?

(He really thinks that I have started picking up the language so fast, which is nowhere near the reality :P)

They are Software Architecture and Hardware Architecture. The hardware consists of all tangible parts and connectors represented as boxes.

I am getting the picture now, go on. But, what is an application?

An application is a piece of software that runs on a particular platform performing specific functionality. Example, MS-Word inside MS-Office running on Vista / 7 that can be used to create and edit word documents. But, to employ this application, we can make use of data and in an IS, all the data is clubbed into a database.

Now you are letting out too much jargons.

Hmm, I will explain you. We are going to process something in our hardware, right? The database describes WHAT is to be processed and the application specified HOW it is to be processed.

Why are these things important?

Because, basically every system has these 2 components. Previously, both the data and application were clubbed together in the same machine. This is called single-tier hierarchy. I can even send you the architecture diagrams through mail. A simple example is editing your own word document from your PC/Laptop. Having a look at it, you can get a clear picture. But, when the system is expanding physically and geographically, the number of boxes/machines are going to increase. How well we are going to separate the application and data so that the processing is not conflicted or delayed or lost at any time.



Okay, tell me about other models.

Now the next step was to separate the data and application. There can be a single server that has all the data and many terminals with only the copies of the application connected together in a LAN. All the business logic lie here. A user can log in from any terminal, make use of the data from the server, edit or update it. This is called two-tier architecture.


Now, I have a doubt Prashanth. Will not the network get loaded if many users go on to access the server?

Of course yes. The solution is to partition the application and place them separately. The business logic can be extracted and kept common in a separate box in the server. This helps because only the presentation logic is kept in the terminals and they become dumb now, making the processing easier and faster. This is the three-tier architecture.


Is that all, or do we have anymore?

Wait dude, don't you wanna know about the internet?

Internet, how is it related to the discussion here?
As need increases, the partition can be done all ways and always as desired. The disadvantage in last model was that we need specialist softwares for running specific applications. This was seen as a discomfort and want of generic software was needed. Now, these were later called as the browsers and the request from client browsers were processed by web servers. This led to beginning og multi-tier architectures and the introduction of the Internet.



I got everything what you said. Im glad that i learned new things today. But, please give me some examples for database and applications.

An application can be ERP application like SAP. Prime databases are Oracle, SQL Server, HANA, etc.

Oh fine. Im gonna talk to my sister working in SAP tomorrow and gonna surprsie her. She will be astonished if she hears me talking tech like this. Thanks dude, for throwing me light on this topic.

Welcome yaar. Talking to you, I forgot about my assignments. I need to finish them now, so leaving. Good night, catch you later.

Good night :)


16 comments:

  1. Boy geth da , A very nice initiative to a blog ...
    Keep updating more boy .......

    ReplyDelete
  2. Hey... I guess these are the things u learnt in IIT!! :P coz this is surely not Prashanth.P B.Tech.(I.T.) :D
    btw... does saving ur friend's name as "Java officer" have any specific reason?(just out of curiosity) ;)

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
    2. learning late, anyhow its better than never.
      have you forgotten the aricent test and the only one who opted for java test that day? :D

      Delete
  3. dai! ennada phone laye class eduthu iruka!!! epadi padam varanji kaamicha???

    ReplyDelete
    Replies
    1. adukudan media guy unga support thevai padudhu :P

      Delete
  4. This comment has been removed by the author.

    ReplyDelete
  5. Ungala laam thiruthave mudiyathu da... Phone panni kuda system architecture, compuer architecture, two tier three tier lam ... Neengalam epa da urupada poreenga !!!

    ReplyDelete
    Replies
    1. assignment apdi da :( enakku mattum aasaya ena.. :\

      Delete
  6. good initiative boy... keep up the spirit...

    ReplyDelete
  7. Machi super da :) Expecting some abstract topics next time around da! Keep up your writing by the way!!

    ReplyDelete
    Replies
    1. thank u da.. with all ur support, i think i will :)

      Delete