3 tier architecture
TRANSCRIPT
3 Tier Architecture
Software Components
• We are in to building complex software applications and as you are
well aware most of the software will have a
– User interface (UI)
» Is what a user sees and interact with. Eg: GUI
– Business logic
»On which the programming logic has been build. Eg: Reports
– Backend
»Mechanism to store data permanently. Eg: Database
Software Architecture
• In order to achieve maintainability, Scalability and security we
may need to separate those components in to different layers and
tiers and there comes the relevance of software architecture
• Software architecture is the Process of defining a structured
solution that meets all of the technical and operational
requirements.
1-Tier Architecture
• Code for all the required component to run the application are
coupled tightly together.
• Ie. User interface, business logic, and data storage are all located
without any logical and physical separation
« Eg: MS Excel,
• Advantages
– Simple
– Easy to design
• Disadvantages
– Difficult for multiple users ie .Not Scalable
– Because they are not part of a network, they are useless for designing
web applications.
1-Tier Architecture
2-Tier Architecture
• All the required component to run the application are coupled
within client and server.
Client Applications
Database Server
Client
Presentation + Business LogicServer
Database
Client
PresentationServer
Database + Business Logic
OR
Client Applications
2-Tier Architecture
Database Server
Select * from tbl_cutomer
Some application developed in java/c++/.NET and installed
on clients computer
Points to be noted
• It is possible to implement the 2 tire architecture in a single
system as well. I.e. it’s not necessary to be in a client server model
always
• The only thing is that there should be a logical separation between
database and presentation with business logic coupled with any of
the other two layers
• By doing so, software installation will also includes installation of
the database
• Advantages
– Simple to implement compared to 3 - tier
– Easy to use
• Disadvantages
– Performance will be degrade upon increasing the users, since the
database server has to handle the business logic
– If client beholds most of the application logic, problems arise in
controlling the software version and re-distributing of new versions.
– Any change in an application should reflect all clients. If higher number
of users exists in the system
2-Tier Architecture
• All the required component to run the application are logically
separated ( and hence can be physical)
3-Tier Architecture
Client Browser – eg:Chrome
PresentationWeb Server Eg:Apache,IIS
Business LogicDatabase Server Eg:Mysql
Backend
•
Returns data
Request from Presentation layer
Apply business logic on the data
12
4
3
Connect with database server
5
WebServer
Processed data to be disaplyed in browser
Browser Database Server
Working of 3-Tier architecture
• Advantages
– Scalability – Each tier can scale horizontally
– Better Re-use
– Easy to maintain and modification is bit easy, won’t affect other
modules
• Disadvantages
– Increase Complexity/Effort
3-Tier Architecture
Points to be noted
• It is also possible to implement the 3 tire architecture in a single
system as well. I.e. it’s not necessary to be in a client server model
always
• The only thing is that there should be a logical separation between
database and presentation and business logic
Questions?
“A good question deserve a good grade…”
Self Check !!
End of day
If this presentation helped you, please visit our page facebook.com/baabtra and like it.
Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com
Contact Us
Emarald Mall (Big Bazar Building)Mavoor Road, Kozhikode,Kerala, India.Ph: + 91 – 495 40 25 550
NC Complex, Near Bus StandMukkam, Kozhikode,Kerala, India.Ph: + 91 – 495 40 25 550
Start up VillageEranakulam,Kerala, India.
Email: [email protected]