SlideShare a Scribd company logo
1 of 44
INTEGRATIVE
PROGRAMMING
Course Content
 Introduction
 Integrative programming and integration techniques
 Methods and models used in enterprise application
integration
 The need for application integration
 Challenges in integration.
Integration of Software
 refers to techniques for combining existing software
components to form a complete system.
 includes at least one existing software system, developed in
the past with no plan for its symmetric integration with
another component in the future
Integrative Programming
 deals with an integration approaches and techniques to
enable a secure, intra and inter application collaboration that
connect different components of IT infrastructure such as:
People
 applications
platforms and
 databases
Integrative solutions
enable an organization to integrate business
processes internally and externally with business
partners to create dynamic environments that
supports current and evolving business requirements,
thereby creating a global organization.
Application integration
assists in unlimited sharing of data and
business processes among any connected
applications or data sources in without making major
changes to the applications or data structures.
Integration
is the process of connecting multiple, independently
developed applications using incompatible
technologies into a single organization wide system
with information flowing seamlessly among the
integrated systems or components.
1.1.Overview of inter system
communication
Inter-system communication
is the communication between a set of
heterogeneous systems that are integrated
together.
System integration
Given two or more systems, subsystems or
components, each of which function properly
(satisfying their requirement within their
environment).
Functional integration or technology integration
 Given a software system, this may have been functioning
properly in the field for a significant period.
 The problem is to integrate a new function or a new
technology within the system.
 The integrated system should provide the new functionality or
use the new technology, while preserving the original system
functionality.
Incremental engineering
 A software system can be developed and delivered using available technologies
and with less functionality than it is intended to finally provide.
Modification
 Sometimes an existing and properly functioning software system must be
decomposed and integrated to carry out modification.
1.2.The need for integration
Most of organizations consist of more than one
department, running department specific
applications and those applications interact with each
other to achieve the overall objective of the
organizations.
Some of the reasons for integration are the
following;
 Technology change affects all layers; legacy does not go away so easily.
 The architecture of the organization information system depends on constraints
related to the technology but also to the organization.
 Within an enterprise, each department may have its own IT infrastructure,
systems and databases which are maintained independently. Integrating them
may bring additional value to the company.
 Integration assists in formation of Zero Latency organization - when all functions
within the organization work with the same up-to-date information, latency
between applications is eliminated/ reduced.
 Updating and integrating of applications is possible whenever required. New
applications can be created by integrating real time data from different parts of
the enterprise
1.3.Integration Models
Integration Model
 defines how applications will be integrated by defining the
nature of and mechanisms for integration.
Methods used for application integration
Presentation integration
Data integration and
Function integration
Presentation integration model
allows the integration of new software through the
existing presentations of the legacy software.
This is typically used to create a new user interface
but may be used to integrate with other applications.
Data integration model
allows the integration of software through access to
the data that is created, managed and stored by the
software typically for the purposes of reusing or
synchronizing data across applications.
Functional integration model
allows the integration of software for the purpose of
invoking existing functionality from other new or
existing applications.
The integration is done through interfaces to the
software.
1.4.Fundamental Challenges of Integration
Some of the challenges of integration are;
Network unreliability
Distributed systems
Slow networks and
Heterogeneity
Modification complexity
Network is unreliable
 Integration solutions have to transport data from one
computer to another across networks.
 Often times, two systems to be integrated are separated by
continents and data between them has to travel through
phone-lines, LAN segments, routers, switches, public
networks, and satellite links.
Distributed
in the worst case, every application runs on a
completely separate environment, e.g., database
storage is not shared among applications. Message-
based communication is the only possibility to
exchange information.
Networks are slow
Sending data across a network is multiple
orders of magnitude slower than making a
local method call.
Any two applications are different
Integration solutions need to transmit information
between systems that use different programming
languages, operating platforms, and data formats.
Heterogeneous
each application implements its own data model.
Concepts may be shared, but representation
mismatches are to be expected. Mappings and
transformations are required.
Change is inevitable
Applications change over time. An integration
solution has to keep pace with changes in the
applications it connects.
applications update their state independently
without coordinating with each other. The systems to
be integrated are maintained independently and
upgraded at different times.
1.5.Integrative Technologies/methods for
integration
Application integration
 is an integration framework composed of a collection of
technologies and services which form a middleware or
"middleware framework" to enable integration of systems and
applications across organizations.
There are four methods used in application
integration
 File Transfer- one application writes a file that another later reads. The applications
need to agree on the filename and location, the format of the file, the timing of
when it will be written and read, and who will delete the file.
 Shared Database- multiple applications share the same database schema, located
in a single physical database.
 Remote Procedure Invocation- one application exposes some of its functionality so
that it can be accessed remotely by other applications as a remote procedure.
 Messaging- one application publishes a message to a common message channel.
1.5.1.File transfer
How can we integrate multiple applications so that they
work together and can exchange information and
interact with each other?
Figure 1 File transfer method
1.5.2.Shared Database
Figure 2 Shared data
1.5.3.Remote procedure calls
Figure 3 Remote procedure calls
Messaging
 allows interaction between applications possible. Message
passing can be used to transfer packets of data frequently,
immediately, reliably, and asynchronously, or synchronously
using customizable formats.
Message is transmitted in five steps:
1. Create — the sender creates the message and populates it with data.
2. Send — the sender adds the message to a channel.
3. Deliver — the messaging system moves the message from the sender’s
computer to the receiver’s computer, making it available to the receiver.
4. Receive — the receiver reads the message from the channel.
5. Process — the receiver extracts the data from the message.
This diagram illustrates these five transmission steps,
which computer performs each, and which steps involve
the messaging system:
Figure 4 Message Transmissions Step-by-step
Two important messaging concepts:
Send and forget
 in step 2, the sending application sends the message to the message
channel.
 Once that send is complete, the sender can go on to other work while the
messaging system transmits the message in the background.
 The sender can be confident that the receiver will eventually receive the
message and does not have to wait until that happens.
Store and forward
 in step 2, when the sending application sends the message to the
message channel, the messaging system stores the message on the
sender’s computer, either in memory or on disk.
 In step 3, the messaging system delivers the message by forwarding
it from the sender’s computer to the receiver’s computer, and then
stores the message once again on the receiver’s computer.
 This store-and-forward process may be repeated many times, as the
message is moved from one computer to another, until it reaches
the receiver’s computer.
1.6. Middleware and Integrative architectures
Middleware
 is a software programming running at the top of operating system and below the
applications. It connects applications or software components.
 provides a standard high level interface to the application developers and
integrators, so that application can easily interoperate.
Interoperability-is the ability of two or more components or systems to exchange
information.
There are three types of middleware
1. Transaction-oriented middleware - supports distributed computing involving
database applications.
2. Message-oriented middleware: supports reliable, asynchronous
communications between distributed components or applications.
3. Object-oriented middleware: systems are based on object-oriented paradigm,
and primarily support synchronous communications between distributed objects
or software components. Examples are CORBA, DCOM and RMI.
Integrative architectures
 the standard methodologies for application integration. These
architectures include, CORBA, DCOM and RPC. The
architectures act as a middleware, a software application that
mediates between different applications.
Common Object Request Broker
Architecture
CORBA
 is a software standard that is defined and maintained by the Object
Management Group (OMG).
 is a standard architecture for a distributed objects system.
 designed to allow distributed objects to interoperate in a heterogenous
environment, where objects can be implemented in different
programming language and/or deployed on different platforms.
CORBA architecture
 Distributed component object model- extends the COM to
support communication between objects.
DCOM
 is a software architecture or remote protocol that defines
a binary standard for component interoperability.
 DCOM is a software architecture that allows applications to be
built from binary software components.
Binary Interface
 is a program interface between binary program modules
often one of the module is library or operating system and
the other is user program module.
 Defines how computational routines are called in machine
code or low-level which is hardware independent.
444963864-INTEGRATIVE-PROGRAMMING-lesson1-pptx.pptx

More Related Content

What's hot

Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)MuhammadTalha436
 
Object oriented analysis
Object oriented analysisObject oriented analysis
Object oriented analysisMahesh Bhalerao
 
Distributed computing
Distributed computingDistributed computing
Distributed computingshivli0769
 
Protocol architecture TCP IP
Protocol architecture TCP IPProtocol architecture TCP IP
Protocol architecture TCP IPToufiqueAhmed13
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Mazhar Ishaq Khokhar
 
Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computinggaurav jain
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process ModelsEducation Front
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factorsNancyBeaulah_R
 
Case study how pointer plays very important role in data structure
Case study how pointer plays very important role in data structureCase study how pointer plays very important role in data structure
Case study how pointer plays very important role in data structureHoneyChintal
 
Map reduce in BIG DATA
Map reduce in BIG DATAMap reduce in BIG DATA
Map reduce in BIG DATAGauravBiswas9
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1Mohammed Romi
 
Database management system
Database management systemDatabase management system
Database management systemAmit Sarkar
 
Lecture6 text
Lecture6   textLecture6   text
Lecture6 textJay Patel
 

What's hot (20)

Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
 
Object oriented analysis
Object oriented analysisObject oriented analysis
Object oriented analysis
 
CSS - Adding Background Images
CSS - Adding Background ImagesCSS - Adding Background Images
CSS - Adding Background Images
 
Distributed computing
Distributed computingDistributed computing
Distributed computing
 
Protocol architecture TCP IP
Protocol architecture TCP IPProtocol architecture TCP IP
Protocol architecture TCP IP
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)
 
Cloud Ecosystem
Cloud EcosystemCloud Ecosystem
Cloud Ecosystem
 
Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computing
 
Defect removal effectiveness
Defect removal effectivenessDefect removal effectiveness
Defect removal effectiveness
 
Design notation
Design notationDesign notation
Design notation
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process Models
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Case study how pointer plays very important role in data structure
Case study how pointer plays very important role in data structureCase study how pointer plays very important role in data structure
Case study how pointer plays very important role in data structure
 
Unit 2
Unit 2Unit 2
Unit 2
 
Map reduce in BIG DATA
Map reduce in BIG DATAMap reduce in BIG DATA
Map reduce in BIG DATA
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1
 
Database management system
Database management systemDatabase management system
Database management system
 
Features of Hadoop
Features of HadoopFeatures of Hadoop
Features of Hadoop
 
Lecture6 text
Lecture6   textLecture6   text
Lecture6 text
 
Cs6703 grid and cloud computing unit 1
Cs6703 grid and cloud computing unit 1Cs6703 grid and cloud computing unit 1
Cs6703 grid and cloud computing unit 1
 

Similar to 444963864-INTEGRATIVE-PROGRAMMING-lesson1-pptx.pptx

Distributed Software Engineering with Client-Server Computing
Distributed Software Engineering with Client-Server ComputingDistributed Software Engineering with Client-Server Computing
Distributed Software Engineering with Client-Server ComputingHaseeb Rehman
 
Distributed system
Distributed systemDistributed system
Distributed systemchirag patil
 
Distributed system Tanenbaum chapter 1,2,3,4 notes
Distributed system Tanenbaum chapter 1,2,3,4 notes Distributed system Tanenbaum chapter 1,2,3,4 notes
Distributed system Tanenbaum chapter 1,2,3,4 notes SAhammedShakil
 
Implementation of Agent Based Dynamic Distributed Service
Implementation of Agent Based Dynamic Distributed ServiceImplementation of Agent Based Dynamic Distributed Service
Implementation of Agent Based Dynamic Distributed ServiceCSCJournals
 
D sys ch-vvdp-unit-1
D sys ch-vvdp-unit-1D sys ch-vvdp-unit-1
D sys ch-vvdp-unit-1shaik subhani
 
Distributed Computing Report
Distributed Computing ReportDistributed Computing Report
Distributed Computing ReportIIT Kharagpur
 
An approach of software engineering through middleware
An approach of software engineering through middlewareAn approach of software engineering through middleware
An approach of software engineering through middlewareIAEME Publication
 
Instant message
Instant  messageInstant  message
Instant messagekplshrm222
 
CSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating SystemCSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating Systemghayour abbas
 
IP Messenger And File Transfer over Ethernet LAN
IP Messenger And File Transfer over Ethernet LANIP Messenger And File Transfer over Ethernet LAN
IP Messenger And File Transfer over Ethernet LANdbpublications
 
Paper id 712019116
Paper id 712019116Paper id 712019116
Paper id 712019116IJRAT
 
Distributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT Jaipur
Distributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT JaipurDistributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT Jaipur
Distributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT JaipurDrNilam Choudhary
 
Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  dannyijwest
 
CLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdf
CLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdfCLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdf
CLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdfyadavkarthik4437
 

Similar to 444963864-INTEGRATIVE-PROGRAMMING-lesson1-pptx.pptx (20)

INTEGRATIVE PROGRAMMING ch1.pptx
INTEGRATIVE PROGRAMMING ch1.pptxINTEGRATIVE PROGRAMMING ch1.pptx
INTEGRATIVE PROGRAMMING ch1.pptx
 
Distributed Software Engineering with Client-Server Computing
Distributed Software Engineering with Client-Server ComputingDistributed Software Engineering with Client-Server Computing
Distributed Software Engineering with Client-Server Computing
 
Distributed system
Distributed systemDistributed system
Distributed system
 
integeration
integerationintegeration
integeration
 
Distributed system Tanenbaum chapter 1,2,3,4 notes
Distributed system Tanenbaum chapter 1,2,3,4 notes Distributed system Tanenbaum chapter 1,2,3,4 notes
Distributed system Tanenbaum chapter 1,2,3,4 notes
 
Implementation of Agent Based Dynamic Distributed Service
Implementation of Agent Based Dynamic Distributed ServiceImplementation of Agent Based Dynamic Distributed Service
Implementation of Agent Based Dynamic Distributed Service
 
D sys ch-vvdp-unit-1
D sys ch-vvdp-unit-1D sys ch-vvdp-unit-1
D sys ch-vvdp-unit-1
 
SYNCHRONIZATION
SYNCHRONIZATIONSYNCHRONIZATION
SYNCHRONIZATION
 
Distributed Computing Report
Distributed Computing ReportDistributed Computing Report
Distributed Computing Report
 
An approach of software engineering through middleware
An approach of software engineering through middlewareAn approach of software engineering through middleware
An approach of software engineering through middleware
 
Instant message
Instant  messageInstant  message
Instant message
 
CSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating SystemCSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating System
 
ESB Overview
ESB OverviewESB Overview
ESB Overview
 
IP Messenger And File Transfer over Ethernet LAN
IP Messenger And File Transfer over Ethernet LANIP Messenger And File Transfer over Ethernet LAN
IP Messenger And File Transfer over Ethernet LAN
 
Paper id 712019116
Paper id 712019116Paper id 712019116
Paper id 712019116
 
Distributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT Jaipur
Distributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT JaipurDistributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT Jaipur
Distributed System Unit 1 Notes by Dr. Nilam Choudhary, SKIT Jaipur
 
Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  
 
Unit 4.pdf
Unit 4.pdfUnit 4.pdf
Unit 4.pdf
 
Middleware – Its Types, Architecture, and Benefits.docx
Middleware – Its Types, Architecture, and Benefits.docxMiddleware – Its Types, Architecture, and Benefits.docx
Middleware – Its Types, Architecture, and Benefits.docx
 
CLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdf
CLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdfCLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdf
CLOUD COMPUTING CHANTI-130 ( FOR THE COMPUTING2).pdf
 

Recently uploaded

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

444963864-INTEGRATIVE-PROGRAMMING-lesson1-pptx.pptx

  • 2. Course Content  Introduction  Integrative programming and integration techniques  Methods and models used in enterprise application integration  The need for application integration  Challenges in integration.
  • 3. Integration of Software  refers to techniques for combining existing software components to form a complete system.  includes at least one existing software system, developed in the past with no plan for its symmetric integration with another component in the future
  • 4. Integrative Programming  deals with an integration approaches and techniques to enable a secure, intra and inter application collaboration that connect different components of IT infrastructure such as: People  applications platforms and  databases
  • 5. Integrative solutions enable an organization to integrate business processes internally and externally with business partners to create dynamic environments that supports current and evolving business requirements, thereby creating a global organization.
  • 6. Application integration assists in unlimited sharing of data and business processes among any connected applications or data sources in without making major changes to the applications or data structures.
  • 7. Integration is the process of connecting multiple, independently developed applications using incompatible technologies into a single organization wide system with information flowing seamlessly among the integrated systems or components.
  • 8. 1.1.Overview of inter system communication Inter-system communication is the communication between a set of heterogeneous systems that are integrated together.
  • 9. System integration Given two or more systems, subsystems or components, each of which function properly (satisfying their requirement within their environment).
  • 10. Functional integration or technology integration  Given a software system, this may have been functioning properly in the field for a significant period.  The problem is to integrate a new function or a new technology within the system.  The integrated system should provide the new functionality or use the new technology, while preserving the original system functionality.
  • 11. Incremental engineering  A software system can be developed and delivered using available technologies and with less functionality than it is intended to finally provide.
  • 12. Modification  Sometimes an existing and properly functioning software system must be decomposed and integrated to carry out modification.
  • 13. 1.2.The need for integration Most of organizations consist of more than one department, running department specific applications and those applications interact with each other to achieve the overall objective of the organizations.
  • 14. Some of the reasons for integration are the following;  Technology change affects all layers; legacy does not go away so easily.  The architecture of the organization information system depends on constraints related to the technology but also to the organization.  Within an enterprise, each department may have its own IT infrastructure, systems and databases which are maintained independently. Integrating them may bring additional value to the company.  Integration assists in formation of Zero Latency organization - when all functions within the organization work with the same up-to-date information, latency between applications is eliminated/ reduced.  Updating and integrating of applications is possible whenever required. New applications can be created by integrating real time data from different parts of the enterprise
  • 15. 1.3.Integration Models Integration Model  defines how applications will be integrated by defining the nature of and mechanisms for integration. Methods used for application integration Presentation integration Data integration and Function integration
  • 16. Presentation integration model allows the integration of new software through the existing presentations of the legacy software. This is typically used to create a new user interface but may be used to integrate with other applications.
  • 17. Data integration model allows the integration of software through access to the data that is created, managed and stored by the software typically for the purposes of reusing or synchronizing data across applications.
  • 18. Functional integration model allows the integration of software for the purpose of invoking existing functionality from other new or existing applications. The integration is done through interfaces to the software.
  • 19. 1.4.Fundamental Challenges of Integration Some of the challenges of integration are; Network unreliability Distributed systems Slow networks and Heterogeneity Modification complexity
  • 20. Network is unreliable  Integration solutions have to transport data from one computer to another across networks.  Often times, two systems to be integrated are separated by continents and data between them has to travel through phone-lines, LAN segments, routers, switches, public networks, and satellite links.
  • 21. Distributed in the worst case, every application runs on a completely separate environment, e.g., database storage is not shared among applications. Message- based communication is the only possibility to exchange information.
  • 22. Networks are slow Sending data across a network is multiple orders of magnitude slower than making a local method call.
  • 23. Any two applications are different Integration solutions need to transmit information between systems that use different programming languages, operating platforms, and data formats.
  • 24. Heterogeneous each application implements its own data model. Concepts may be shared, but representation mismatches are to be expected. Mappings and transformations are required.
  • 25. Change is inevitable Applications change over time. An integration solution has to keep pace with changes in the applications it connects. applications update their state independently without coordinating with each other. The systems to be integrated are maintained independently and upgraded at different times.
  • 26. 1.5.Integrative Technologies/methods for integration Application integration  is an integration framework composed of a collection of technologies and services which form a middleware or "middleware framework" to enable integration of systems and applications across organizations.
  • 27. There are four methods used in application integration  File Transfer- one application writes a file that another later reads. The applications need to agree on the filename and location, the format of the file, the timing of when it will be written and read, and who will delete the file.  Shared Database- multiple applications share the same database schema, located in a single physical database.  Remote Procedure Invocation- one application exposes some of its functionality so that it can be accessed remotely by other applications as a remote procedure.  Messaging- one application publishes a message to a common message channel.
  • 28. 1.5.1.File transfer How can we integrate multiple applications so that they work together and can exchange information and interact with each other?
  • 29. Figure 1 File transfer method
  • 31. 1.5.3.Remote procedure calls Figure 3 Remote procedure calls
  • 32. Messaging  allows interaction between applications possible. Message passing can be used to transfer packets of data frequently, immediately, reliably, and asynchronously, or synchronously using customizable formats.
  • 33. Message is transmitted in five steps: 1. Create — the sender creates the message and populates it with data. 2. Send — the sender adds the message to a channel. 3. Deliver — the messaging system moves the message from the sender’s computer to the receiver’s computer, making it available to the receiver. 4. Receive — the receiver reads the message from the channel. 5. Process — the receiver extracts the data from the message.
  • 34. This diagram illustrates these five transmission steps, which computer performs each, and which steps involve the messaging system: Figure 4 Message Transmissions Step-by-step
  • 35. Two important messaging concepts: Send and forget  in step 2, the sending application sends the message to the message channel.  Once that send is complete, the sender can go on to other work while the messaging system transmits the message in the background.  The sender can be confident that the receiver will eventually receive the message and does not have to wait until that happens.
  • 36. Store and forward  in step 2, when the sending application sends the message to the message channel, the messaging system stores the message on the sender’s computer, either in memory or on disk.  In step 3, the messaging system delivers the message by forwarding it from the sender’s computer to the receiver’s computer, and then stores the message once again on the receiver’s computer.  This store-and-forward process may be repeated many times, as the message is moved from one computer to another, until it reaches the receiver’s computer.
  • 37. 1.6. Middleware and Integrative architectures Middleware  is a software programming running at the top of operating system and below the applications. It connects applications or software components.  provides a standard high level interface to the application developers and integrators, so that application can easily interoperate. Interoperability-is the ability of two or more components or systems to exchange information.
  • 38. There are three types of middleware 1. Transaction-oriented middleware - supports distributed computing involving database applications. 2. Message-oriented middleware: supports reliable, asynchronous communications between distributed components or applications. 3. Object-oriented middleware: systems are based on object-oriented paradigm, and primarily support synchronous communications between distributed objects or software components. Examples are CORBA, DCOM and RMI.
  • 39. Integrative architectures  the standard methodologies for application integration. These architectures include, CORBA, DCOM and RPC. The architectures act as a middleware, a software application that mediates between different applications.
  • 40. Common Object Request Broker Architecture CORBA  is a software standard that is defined and maintained by the Object Management Group (OMG).  is a standard architecture for a distributed objects system.  designed to allow distributed objects to interoperate in a heterogenous environment, where objects can be implemented in different programming language and/or deployed on different platforms.
  • 41. CORBA architecture  Distributed component object model- extends the COM to support communication between objects.
  • 42. DCOM  is a software architecture or remote protocol that defines a binary standard for component interoperability.  DCOM is a software architecture that allows applications to be built from binary software components.
  • 43. Binary Interface  is a program interface between binary program modules often one of the module is library or operating system and the other is user program module.  Defines how computational routines are called in machine code or low-level which is hardware independent.