0% found this document useful (0 votes)
8 views4 pages

SE Assignment 3

Assignment of SE

Uploaded by

chabdulmanan8953
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views4 pages

SE Assignment 3

Assignment of SE

Uploaded by

chabdulmanan8953
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Assignment#03

Topic: Software Architecture

Subject: SE-II

Submitted to: Sir Talha Tahir Bajwa

Submitted by: Abdul Manan

Reg. #: 2018-ag-8953

Class: BS(CS) 4th

Batch#: 2018-2022

Department of Computer Science

University of Agriculture Faisalabad


Sub Campus Burewala
What is software architecture?
software architecture is high level structure of software system. Each structure comprise
software elements, relations, among them and properties of both elements and relations. Its
documentation is also called high level design.

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.

Role of Software Architect


A Software Architect provides a solution that the technical team can create and design for the
entire application. A software architect should have expertise in the following areas

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.

• Should be able to review design proposals and tradeoff among themselves.

Domain Expertise
• Expert on the system being developed and plan for software evolution.

• Assist in the requirement investigation process, assuring completeness and consistency.

• 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.

• Coordinate the selection of programming language, framework, platforms, databases, etc.

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.

• Information specialist who shares knowledge and has vast experience.

• Protect the team members from external forces that would distract them and bring less value
to the project.

Deliverables of the Architect


• A clear, complete, consistent, and achievable set of functional goals

• A functional description of the system, with at least two layers of decomposition

• A concept for the system

• 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)

2. Application layer (Business Tier)

3. Database layer (Data Tier)

Client system handles Presentation layer, Application server handles Application layer and
Server system handles Database layer.

You might also like