SE Assignment 3
SE Assignment 3
Subject: SE-II
Reg. #: 2018-ag-8953
Batch#: 2018-2022
Architecture serves as a blueprint for a system. It provides an abstraction to manage the system
complexity and establish a communication and coordination mechanism among components.
Design Expertise
• Expert in software design, including diverse methods and approaches such as object-oriented
design, event-driven design, etc.
• Lead the development team and coordinate the development efforts for the integrity of the
design.
Domain Expertise
• Expert on the system being developed and plan for software evolution.
• Coordinate the definition of domain model for the system being developed.
Technology Expertise
• Expert on available technologies that helps in the implementation of the system.
Methodological Expertise
• Expert on software development methodologies that may be adopted during SDLC (Software
Development Life Cycle). • Choose the appropriate approaches for development that helps the
entire team.
Hidden Role of Software Architect
• Facilitates the technical work among team members and reinforcing the trust relationship in
the team.
• Protect the team members from external forces that would distract them and bring less value
to the project.
• A design in the form of the system, with at least two layers of decomposition
• A notion of the timing, operator attributes, and the implementation and operation plans
• A document or process which ensures functional decomposition is followed, and the form of
interfaces is controlled
Tier
Software Architecture: Software Architecture consists of One Tier, Two Tier, Three Tier and N-
Tier architectures.
A “tier” can also be referred to as a “layer”. Three layers involved in the application namely
Presentation Layer, Business Layer and Data Layer.
One Tier
One tier architecture has all the layers such as Presentation, Business, Data Access layers in a
single software package. Applications which handles all the three tiers such as MP3 player, MS
Office are come under one tier application. The data is stored in the local system or a shared
drive.
Two-tier
The Two-tier architecture is divided into two parts: 1. Client Application (Client Tier) 2.
Database (Data Tier)
Client system handles both Presentation and Application layers and Server system handles
Database layer. It is also known as client server application. The communication takes place
between the Client and the Server. Client system sends the request to the Server system and the
Server system processes the request and sends back the data to the Client System
Three Tier
1. Presentation layer (Client Tier)
Client system handles Presentation layer, Application server handles Application layer and
Server system handles Database layer.