Part V: The Web as a Distributed Computing Paradigm

Introduction to Web Services

Dr. Sowmya Kamath S, Dept of IT, NITK Surathkal 3-Oct-16
Introduction

 IT Architecture
 A high level design of an information system to be developed.

 Two main goals while designing a system –
 Determining functional requirements.
 Determining non-functional requirements.

Dept of IT, NITK Surathkal 3-Oct-16
IT Architecture

 GOAL 1
 Determining functional requirements.
 Basic functionality of the system.
 Interaction between the different components.
 How to distribute the functionality across programs/sites.
 Choosing the technology to do all this.
 ….
 Anticipating and preparing for future requirements at least
to a reasonable extent.

Dept of IT, NITK Surathkal 3-Oct-16
IT Architecture (contd.)
GOAL 2
 Satisfying a set of non-functional requirements.
 Performance issues
 Scalability
 Usability "The ease with which a software system or
component can be modified to correct faults,
 Availability improve performance, or adapt to a changed
environment"
 Fault Tolerance
 Maintainability
“How efficiently and easily a software system
 Manageability can be monitored and maintained to keep the
 …. system performing well and running smoothly.”

Dept of IT, NITK Surathkal 3-Oct-16
Why is IT Architecture important?
1. To control redundant applications for same functionality
 Redundant applications - multiple applications with similar purposes
and overlapping capabilities.

 Problems –
 More system interfaces and platforms need to be supported.
 Increased use of hardware/software and human resources.
 higher maintenance costs.

Dept of IT, NITK Surathkal 3-Oct-16
Why is IT Architecture important?
2. To avoid redundant data
 Redundant data - multiple data sources with various versions of the
data leading to system inconsistency

 Problems –
 Maintaining data synchronization between data sources is difficult.
 Inconsistent answers while querying the system.
 Extra effort required in maintenance.

Dept of IT, NITK Surathkal 3-Oct-16
Why is IT Architecture important?
3. To control number of interfaces
 Need to develop and maintain more interfaces as the number of
systems and applications increase.

 Problems –
 Fragile and hard to maintain.
 Extra time and human resources required resulting in lesser profit.

Dept of IT, NITK Surathkal 3-Oct-16
Why is IT Architecture important?
4. To plan for technology obsolescence

 Problems –
 Increasing difficulty in keeping up and maintaining technology and
interfacing with new systems and equipment.
 Increasing inability in adapting systems to suit new and changing business
requirements.
 Increased cost of maintenance.

Dept of IT, NITK Surathkal 3-Oct-16
Why is IT Architecture important?
5. Designing for effective System Integration

 Effective IT Architecture is important because it helps
determine integration requirements.

“ In IT, systems integration is the process of linking together
different computing systems and software applications -
physically, logically or functionally; to act as a coordinated
whole.”

 Integration enables many small applications to function in
one large system.

Dept of IT, NITK Surathkal 3-Oct-16
Methods of System Integration
a. Star Integration (Spaghetti Integration)
 each system is interconnected to each of the remaining subsystems.

Dept of IT, NITK Surathkal 3-Oct-16
Methods of System Integration (contd.)
b. Vertical Integration
 process of integrating subsystems according to their functionality by
creating functional entities (also referred to as silos. )

 Adv:
 integration is performed quickly and involves only the necessary
vendors, therefore, this method is cheaper in the short term.
 Disadv:
 cost-of-ownership can be substantially higher than seen in other
methods
 Reusing subsystems to create another functionality is not possible.

Dept of IT, NITK Surathkal 3-Oct-16
Methods of System Integration (contd.)
c. Horizontal Integration or Enterprise Service Bus (ESB)
 Adds a specialized subsystem called an ESB which is dedicated to
handling communication between other subsystems.

Dept of IT, NITK Surathkal 3-Oct-16
Methods of System Integration (contd.)
c. Horizontal Integration or Enterprise Service Bus (ESB)
 Adv:
 allows cutting the number of connections (interfaces) to only one
per subsystem which will connect directly to the ESB.
 ESB capable of translating one interface into another interface.

 Disadv:
 ESB products themselves are quite complex, costly.
 ESB is treated as another subsystem.

Dept of IT, NITK Surathkal 3-Oct-16
Methods of System Integration (contd.)
ESB (current trends in SOA)

Dept of IT, NITK Surathkal 3-Oct-16
Methods of System Integration (contd.)
ESB (example IT architecture with SOA)

Dept of IT, NITK Surathkal 3-Oct-16
Typical IT Architecture

Presentation Application Logic Data Sources

Dept of IT, NITK Surathkal 3-Oct-16
Typical IT Architecture (contd.)
 Presentation
• Manages the interface with the various connections to the system
(the access channels).
• Responsible for ensuring that information is delivered in the right
way to whatever device is being used.
 Application Logic
• Represents the business logic that operates on various databases
in the data tier.
 Data Tier
• Comprises of various company data repositories.

Dept of IT, NITK Surathkal 3-Oct-16
3 TIER IT ARCHITECTURE - EXAMPLE
Integration Infrastructure
 Describes the hardware and software required to make the desired
connections, for tying the various system parts together.
 Two types of connections -
 Presentation tier to applications.
 Applications to each other.

 This is generally referred to as Middleware.
 Facilitates and manages the interaction between applications across
heterogeneous computing platforms.

Dept of IT, NITK Surathkal 3-Oct-16
3 TIER IT ARCHITECTURE - EXAMPLE
More reading…
 “IT Architectures and Middleware – Strategies for building Large, Integrated
Systems” – Chris Britton and Peter Bye

 QCon Software Developers’ Conference
https://qconsf.com/track/architectures-youve-always-wondered-
about

 High Scalabilty.com
http://highscalability.com/blog/category/example

Dept of IT, NITK Surathkal 3-Oct-16