This document provides an overview of integrated programming technologies. It discusses:
1. Integration allows separately developed software components and systems to be combined into a complete system by connecting them. This involves challenges like network unreliability and handling different technologies.
2. Common integration methods include file transfer, shared databases, remote procedure calls, and messaging between systems.
3. Middleware sits between operating systems and applications to enable integration. Examples are transaction-oriented, message-oriented, and object-oriented middleware. Integrative architectures like CORBA and DCOM also act as middleware.
3. CHAPTER 01: Lesson 1
Darwin Alvin I. Sunga
Integrated Programming
(Overview)
TECHNOLOGIES
4. At the end of this chapter, the students should able to :
1. Learn what is
▪ Integrated Programming Technologies
▪ Overview of Inter System Communication
▪ The Need for Integration
▪ Models of Integration
▪ Fundamental Challenges of Integration
▪ Methods for Integration
▪ Middleware and Integrative Architectures
5. The Internet of Things (IoT) describes the network
of physical objects—“things”—that are
embedded with sensors, software, and other
technologies for the purpose of connecting and
exchanging data with other devices and systems
over the internet.
https://www.oracle.com/ph/internet-of-things/what-is-iot/
6. What is
Integrated
❑ combining or coordinating separate elements so as to provide a
harmonious, interrelated whole
https://www.dictionary.com/browse/integrated
❑ with two or more things combined in order to become more effective
https://dictionary.cambridge.org/us/dictionary/english/integrated
14. Most of the applications that run in organizations’
hardly live in isolation.
Whether the registrar application must interface with
the finance application, the human resource
management application must connect to each other.
https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
16. Integration of multiple, independently developed, managed
and maintained applications components that may
normally use incompatible technologies and heterogeneous
platforms enables transmission of information between
applications, automates flow of data between applications
that make up the business process flow.
https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
It seems like any application can be made better
by integrating it with other applications.
25. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
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.
Information systems change overtime by growing in their
size, incorporating functionality of the existing standalone
systems.
Applications originally intended to operate separately,
later on are required to interoperate with others.
26. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
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
33. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
To support common business processes and data
sharing across applications, applications need to be
integrated. Application integration needs to provide
efficient, reliable and secure data exchange
between multiple enterprises applications.
Challenges of integration span far across business and
technical issues. All integration solutions have to deal
with a few fundamental challenges:
34. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
Network unreliability
Integration solutions have to transport data from one computer
to another across networks. Compared to a process running on
a single computer, distributed computing has to be prepared
to deal with a much larger set of possible problems. 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. Each of these steps can cause delays or
interruptions.
41. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
File Transfer
One of the possible solutions to allow these applications to be integrated
is allowing each application produce files containing information that
other applications need to consume. Integrators take the responsibility of
transforming files into different formats. Produce the files at regular
intervals according to the nature of the business, which can be consumed
or read by another file.
An important decision with files is what format to use. Very rarely will the output of one
application be exactly what's needed for another, so you'll have to do a fair bit of
processing of files along the way. Not just do all the applications that use a file have to
read it, you also have to be able to use processing tools on it.
42. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
Shared Database
A common data base can be used for integrating applications. A single
physical data base can be shared by different applications running on
different platforms. This method integrates applications by having them
store their data in a single shared database.
If a family of integrated applications all rely on the same database, then we can be
pretty sure that they are always consistent all of the time. If we do get simultaneous
updates to a single piece of data from different sources, then we have transaction
management systems that handle that about as gracefully as it ever can be managed
43. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
Remote Procedure Invocation
This method develops each application which is required to be integrated
as a large-scale object or component with encapsulated data. And it
provides an interface to allow other applications to interact with the
running application
Remote Procedure Invocation applies the principle of encapsulation to integrating
applications. If an application needs some information that is owned by another
application, it asks that application directly. If one application needs to modify the data
of another, then it does so by making a call to the other application. Each application
can maintain the integrity of the data it owns. Furthermore, each application can alter its
internal data without having every other application be affected.
44. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
Messaging
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
In essence, a 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.
46. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
is a software programming running at the top of operating
system and below the applications. It connects applications or
software components.
Middleware 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
Middleware
47. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
There are three types of middleware
✓ Transaction-oriented middleware: supports distributed computing
involving database applications.
✓ Message-oriented middleware: supports reliable, asynchronous
communications between distributed components or applications.
✓ Object-oriented middleware: systems are based on object-oriented
paradigm, and primarily support synchronous communications
between distributed objects or software components.
(eg. CORBA, DCOM and RMI)
49. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
✓ Common Object Request Broker Architecture CORBA is a software
standard that is defined and maintained by the Object Management
Group (OMG). The Common Object Request Broker Architecture
(CORBA) is a standard architecture for a distributed objects system.
CORBA is designed to allow distributed objects to interoperate in a
heterogeneous environment, where objects can be implemented in
different programming language and/or deployed on different platforms.
50. https://pdfcoffee.com/integrative-programming-and-technologies-chapter-1-pdf-free.html
✓ Distributed component object model. DCOM 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. Is binary
interface standard for software components, that allows inter-process
communication. 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.