0% found this document useful (0 votes)
20 views14 pages

Software Engineering

Uploaded by

Geetha.R Achar
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)
20 views14 pages

Software Engineering

Uploaded by

Geetha.R Achar
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/ 14

SUBJECT:-

SOFTWARE ENGINEERING
TOPIC:-

 Client server architecture


 Pipe and filter architecture
 Application architectures
Client-server architecture is a model
where a client and a server
communicate directly to handle user
requests
Key components:-
1. Client:
The client is typically the end-user device(e.g., a computer, smartphone, or
application).
It sends requests to the server for specific resources or services, like
data,computation, or access to a remote resource.
The client may have limited processing power and relies on the server to
handle the majority of the data processing and storage.

2.Server:
The server is a more powerful computer or system designed to provide
services to clients.
It processes the client’s requests,retrieves the requested data or resources,
performs necessary actions, and sends back the response.
The server aften handles multiple clients simultaneously.
Example:
Web Application:

Client: A web browser on a user’s device.

Server: A web server that hosts the application and a database server
that stores user data.

Process: The browser (client) sends request for a webpage. The web
server processes this request, accesses the database if necessary,and
sends back the webpage data.
Advantages :-
 The principal advantage of this model is that servers can be
distributed across a network. General functionality (e.g., a printing
service) can be available to all clients and does not need to be
implemented by all services.

Disadvantages:-
 Each service is a single point of failure so susceptible to denial of
service attacks or server failure. Performance may be unpredictable
because it depends on the network as well as the system. May be
management problems if servers are owned by different
organizations.
Pipe and Filter Architecture is a design pattern that
separates the processing of data into distinct stages, known
as filters, which are connected by conduits called pipes.
Each filter performs a specific transformation or processing
task on the data it receives, and the pipes transport the
data from one filter to another.
Example:
Image Processing Pipeline:-
Consider a simple image processing application that applies various
transformations to an image. This application can be modelled using the
pipe and filter architecture
Filters:
• Image Acquisition Filter: Loads the images.
• Grayscale Filter: Converts the image to grayscale.
• Blur Filter: Applies a Gaussian blur to reduce noise.
• Edge Detection Filter: Detects edges in the blurred image.
• Image Display Filter: Shows the final processed image.
Data Flow:
Image Acquisition Filter  Grayscale Filter Blur Filter 
Edge Detection Filter  Image Display Filter
Advantages:-
 Easy to understand and supports transformation reuse. Workflow style
matches the structure of many business processes. Evolution by
adding transformations is straightforward. Can be implemented as
either a sequential or concurrent system.

Disadvantages:-
 The format for data transfer has to be agreed upon between
communicating transformations. Each transformation must parse its
input and unparse its output to the agreed form. This increases
system overhead and may mean that it is impossible to reuse
functional transformations that use incompatible data structures.
Application systems are designed to meet an
organizational need. As businesses have much in common,
their application systems also tend to have a common
architecture that reflects the application requirements. A
generic application architecture is an architecture for a
type of software system that may be configured and adapted
to create a system that meets specific requirements.
application architectures can be used as a:

 Starting point for architectural design.


 Design checklist.
 Way of organizing the work of the development team.
 Means of assessing components for reuse.
 Vocabulary for talking about application types.
Examples of application types:
Data processing applications
 Data driven applications that process data in batches without explicit user
intervention during the processing.
Transaction processing applications
 Data-centred applications that process user requests and update information
in a system database.
Event processing systems
 Applications where system actions depend on interpreting events from the
system's environment.
Language processing systems
 Applications where the users' intentions are specified in a formal language
that is processed and interpreted by the system.

You might also like