Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

conclusion in common architectures

 
ankur rathi
Ranch Hand
Posts: 3830
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One conclusion:

Everything (scalability, availability, reliability, maintainability, extensibility, security, performance) increases with the number of tier in an architecture except manageability.

Is it correct?
 
Francois-Xavier Douxchamps
Greenhorn
Posts: 18
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'm not sure for security and what do you mean about maintainability ? Is it the same than manageability ?
 
Chandramouli Ram
Ranch Hand
Posts: 65
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by ankur rathi:
One conclusion:

Everything (scalability, availability, reliability, maintainability, extensibility, security, performance) increases with the number of tier in an architecture except manageability.

Is it correct?


Hi Ankur,

A simple answer to your question IMHO is NO. You may read the first chapter from Sun Certified Enterprise Architect for J2EE Technology Study Guide
by Mark Cade, Simon Roberts - to get a better idea what all these terms really mean and how they relate to each other. It says that maintainability and extensibility can be enhanced by low coupling, interfaces, modularity, which is something a layered architecture can provide.
 
ankur rathi
Ranch Hand
Posts: 3830
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Francois-Xavier Douxchamps:
I'm not sure for security and what do you mean about maintainability ? Is it the same than manageability ?


No. They are different.

Manageability refers to physically managing the resources and Maintainability refers to maintaining code... IMO.
 
ankur rathi
Ranch Hand
Posts: 3830
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Chandramouli Ram:


It says that maintainability and extensibility can be enhanced by low coupling, interfaces, modularity, which is something a layered architecture can provide.


... and isn't layered architecture Multi-tier architecture???
[ October 03, 2007: Message edited by: ankur rathi ]
 
Chandramouli Ram
Ranch Hand
Posts: 65
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by ankur rathi:


... and isn't layered architecture is Multi-tier architecture???


Yes it is!
 
Kishore Sethumdahvan
Greenhorn
Posts: 5
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi All

scalability-- increases with increase in tier
availability--- increases with increase in tier
reliability--- increases with increase in tier
maintainability--- increases with increase in tier
extensibility--- increases with increase in tier
security--although you could secure the applications in better way with increase in tier(as a security layer across each tier) but this increases
cost and also effect performance to some extent
performance-- increases with increase in tier
 
ankur rathi
Ranch Hand
Posts: 3830
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Chandramouli Ram:


Hi Ankur,

A simple answer to your question IMHO is NO.


I am confused now. What's that made you say No.
 
Chandramouli Ram
Ranch Hand
Posts: 65
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by ankur rathi:


I am confused now. What's that made you say No.


As originally mentioned, my statements are based on Cade & Roberts' book. If you or Kishore feel otherwise, you can quote your references or put forth facts that substantiate what you guys say.
Also, I believe this discussion is about layered application architecture. And, merely layering the application can not certainly provide the whole list of niceties.
[ October 03, 2007: Message edited by: Chandramouli Ram ]
 
Jignesh Patel
Ranch Hand
Posts: 626
Mac
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Everything (scalability, availability, reliability, maintainability, extensibility, security, performance) increases with the number of tier in an architecture except manageability

Ankuar, not sure what you are trying to ask.

In plain english you mean to say

Scalability = 1 tier to performance = 7 tier.

Sorry I am confused.
 
ankur rathi
Ranch Hand
Posts: 3830
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Jignesh Patel:
Everything (scalability, availability, reliability, maintainability, extensibility, security, performance) increases with the number of tier in an architecture except manageability

Ankuar, not sure what you are trying to ask.

In plain english you mean to say

Scalability = 1 tier to performance = 7 tier.

Sorry I am confused.


No Jignesh.

I meant, as you increase the tier in the architecture (say from 1 tier to 3 tier), all these things (scalability, extensibility, reliability, availability, maintainability, performance, and security) increases and only manageability decreases.

Hope my point is clear now.
 
Abhinav Srivastava
Ranch Hand
Posts: 354
Eclipse IDE Java Oracle
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
not correct. if i have a 2 tier application and I just convert it into 3 tier, do I add all those it-ies to it - NO, e.g. performance might even go down if you do so. there would definitely be a trade off among all these and whether one can reach the acceptable levels of all would depend on deeper arch/design decisions.
 
ankur rathi
Ranch Hand
Posts: 3830
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Abhinav Srivastava:
if i have a 2 tier application and I just convert it into 3 tier, do I add all those it-ies to it - NO, e.g. performance might even go down if you do so.


Could you please elaborate more on how performance can go down?
 
Abhinav Srivastava
Ranch Hand
Posts: 354
Eclipse IDE Java Oracle
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
you can think of tiers as intermediate stops, or filters that you have to pass through and each of these stops could make the program slower. UNLESS you have hardware and other strategies (like app-servers and resource pooling) to back it up. The point I am trying to make is increasing the number of tiers in itself is not going to do all the magic. (Though it sure would help in separating concerns.)
 
Andrew Monkhouse
author and jackaroo
Marshal Commander
Pie
Posts: 11833
181
C++ Firefox Browser IntelliJ IDE Java Mac Oracle
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Increasing tiers does not magically increase reliability. The more components you add, the more things you have that can fail.

Based on that, you can see that we have not automatically improved availability either.

Maintainability may not be improved either, depending on your definition of maintainability. If I have a system that I can currently have any programmer with J2SE experience maintain, and I add in a database tier, then my maintainability may decrease if the programmer has no knowledge of databases.

Increasing tiers does not magically improve security. Each component still needs to be secured in it's own right. Just plugging in a new tier without securing it could reduce your systems overall security.

Abhinav makes a good case for why performance is not automatically improved.

I guess the point here is that your absolute "[x] will be improved" is not correct. I would be happier with a "[x] might be improved", and even then you need to be careful that you do not introduce the tiers for the sake of introducing them - you have to do the analysis to show that they will give improvement, and then you have to make sure they are implemented properly.

Regards, Andrew
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic