0% found this document useful (0 votes)
41 views

Lesson4 - System Integration Methodology

Uploaded by

inoyhana3
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views

Lesson4 - System Integration Methodology

Uploaded by

inoyhana3
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 51

Lesson 4 - System

Integration
Methodology
Prepared by:
Shaina Mae Bongo
Introduction
• Systems integration is a great solution for companies
who struggle with working on multiple independent
subsystems and experiencing a lot of time being
wasted due to the necessity of re-entering data to
each of the tools manually.
Steps of systems integration
process
• Boosting up the productivity and improving the
workflow of your company is essential if your aim is to
succeed. Systems integration is a great way to achieve
these goals, however, the development process may
be long and complicated. A systems integrator – that is
a company or a team of professionals – has to make
sure that data flows seamlessly between all of the
components. In order to do so, they usually split their
work into 6 equally important phases and these are:
Requirements
Analysis
Architecture Design
System Integration
Implementation
Maintenance
1. Requirements gathering
• In general, the first step consists of
one or more meetings when you share
your ideas and requirements with a
systems integrator. It is crucial that
you know exactly what you and your
team expect the future system and its
components to do. In order to provide
you with an efficient solution, an IT
company has to make sure your
employees and customers will find the
software comfortable and easy to use.
Qa-
platforms.com
Why it’s important
• There is no such thing as
a standard systems integration.
Every company uses different
subsystems in order to achieve
different goals. It is extremely
important for a systems integrator
to know your requirements very
well.
Qa-
platforms.com
2. Analysis
• After your expectations and
specifications of your future software
are listed down, business analysts
conduct a thorough analysis in order
to determine operational feasibility.
They are experienced in translating
your requirements into needs and
improving the communication
between you and the development
team. It allows an IT company to
connect their vision of the system Getthematic.com

with yours.
Why it’s important
• What you want is not always
what you actually need. Listen
carefully to the company you
have chosen and their advices.
A successful collaboration will
help them to provide you with
the best solution suited to meet
all of your needs.
Getthematic.com
3. Architecture design
• Thanks to the analysis, a systems integrator is ready to perform the
process of putting your subsystems together. However, before they
start, they need to build a strong foundation in order to eliminate all of
the risks. That is why the next phase is dedicated to writing a plan of
how multiple components should be integrated so that they can
function as a whole. Usually, blueprints of the integration are created to
help both sides to visualize the process.
Why it’s important
• A systems integrator aims to provide you with a solution which will
boost your productivity and improve your workflow but their main
objective is to ensure seamless data connectivity between all of the
components. A proper architecture design allows them to perform an
efficient integration.
Capstoneguide.com
4. Systems integration design
• This is the longest and the most challenging phase of the process where
the actual integration is performed. Based on the architecture design
which is rather a logical design, its physical equivalent is developed. If all
of the previous steps have been followed with a close attention to detail,
a systems integrator should perform systems integration successfully and
easily, without losing valuable data.
Why it’s important
• Depending on their number and size, connecting various independent
systems into one while ensuring regular data flow may take some time.
However, this phase requires great precision. A successful integration
can help your company to grow by automating many business processes
and providing you with accurate data.
5. Implementation
• Once the system is ready, it is verified and tested. If test engineers
detect any bugs, it is fixed and the system undergoes operational testing
one more time to ensure the product you receive is errorless. Only then
your order goes live so you and your employees can start enjoying it.
Even though the new solution is based on your previous components, it
may take time to get familiar and comfortable with it.
Why it’s important
• After the systems are integrated, it is your turn in the process of
improving the workflow of your company. In order to notice the results
of the integration, you need to make sure everyone in your team
understands exactly how the new solution works. That is why the
implementation phase may take a while.
6. Maintenance
• The competitive advantage of having your subsystems integrated by a
professional company over buying a new off-the-shelf solution is that
a systems integrator makes sure your product works flawlessly even
after it is released. If you find it hard to use or missing a feature, the
components can be modified or added anytime. You can also report
every bug you detect and the company that has built the system for
you will take care of fixing it.
Why it’s important
• As your company evolves, the system can evolve along with it. There is
no need to acquire a new product as it is much more beneficial to
upgrade the system you already know and find easy to use.
Tips on System Integration
• The main reason for organizations to use system integration is
their need to improve productivity and quality of their
operations.
• The goal is to get the organizations various IT system to “talk to
each other” through the integration, to speed up information
flows and reduce operational costs for the organization.
TOPIC 2: SYSTEM
INTEGRATION METHODS
Typical System integration methods are divided into the
following different categories:
• Point-to-Point Integration
• (also known as one-to-one integration)
• an integration connection between two applications
with data flowing in one direction.
• used when a sender has to send a message to a
single receiver (that is, a 1:1 relationship).
• Example, an organization may need to update a
human resources database with information from an
ERP system. In this model, the destination is a queue
provided by the integration broker, in which the
sender can place messages (a given message is
placed in an individual queue).
• Note: As your business begins to add multiple applications and
develop a sophisticated strategy, point-to-point integration is
simply not enough that result in order and fulfillment issues. Thus,
a point-to-point approach is not sustainable or agile as a business
grows.
• Vertical Integration
• when a firm extends its operations within
its supply chain
• the system components (sub-systems) are
integrated by creating functional “silos”
• The direction of vertical integration can
either be upstream (backward) or
downstream (forward).
• involves acquiring one company from
another company where both the
companies are in the same business line
and at the same value chain supply level.
• a vertically integrated business controls
some aspect of the supply chain, which
means that it not only distributes the
product it sells, it is also involved in the
creation and development of that product
before it reaches the consumer.
Example of Vertical Integration
• In the Philippine market, one notable
example of vertical integration is fast-
food giant Jollibee®. Through its own
commissaries, the brand manufactures
the primary products that are sold
through its vast network of company-
owned and franchisee-owned fast-food
restaurants across the Philippines and
around the world.
• Star Integration
• is very simply a collection of point to
point system integrations. In other
words, a larger set of simple
connections come together to create
a star connection.
• also known as spaghetti integration
• the ideally neat and tidy IT
infrastructure quickly becomes
jumbled and difficult to map if a
company approaches system
integration using this method.
• Horizontal Integration
• is a business expansion strategy that involves a company acquiring
other companies from the same business line or at the same value
chain level to subside competition.
• It is a merger between two companies operating in the same
industry. These companies are usually competitors and merge to
gain higher market power and economies of scale. Other motives
include a larger customer base, higher pricing power because of
increased market share, and lower employment costs, as the top
management of the merged entity, is lower than the two merging
entities combined.
Example of Horizontal Integration
• Common Data Format Integration
• Integration different IT systems to each other usually require that the data
coming out from one system needs to be transformed to a different data
format used by the receiving system.
• As with the Star Integration, if each transformation needs to be done system-
by-system basis, the number of data transformations increases significantly
and becomes a high maintenance task. To overcome this problem, common
data format approach, allows each system to do only one data conversion
from its native format to the common (and vice versa). This way the number
of required data transformations is just a high as the number of the sub-
system.
5 Tips to overcome system integration
challenges
• Almost every business unit uses some type of
specialist software to increase their own
productivity and collaboration. This is great for
individual teams, but not for the company as a
whole. It results in information silos across the
business, which lead to inefficiency and duplication
of effort. The obvious answer is to integrate these
disparate solutions so that data can be shared
widely.
1. Find the simplest solution that works
• The KISS (“Keep it short and simple”) principle states that
most systems work best if they are kept simple rather than
made complicated.
• When it comes to integrating systems, the KISS principle is
a good one to bear in mind. Don’t be tempted to splash
out on risky BDUF (big design upfront) development.
Rather break it down and build only what you need, when
you need it. This will give you agility and enable you to
overcome any unforeseen challenges.
2. Automate as much as possible
• Take some time to work out how to avoid human
intervention when building your integrations. The
more you can automate, the better. You’ll get the
job done faster, with fewer errors.
3. Build it so that you’ll know when
something fails
• If you have no way of knowing when something has
failed, you won’t be able to fix it. Ensure that your
system integrations have monitoring and
viewing/notifications capabilities that will alert you
when failures occur.
4. Opt for multiple, smaller integrations over
large, more complex ones
• Simpler, smaller integrations are often more
robust and create fewer dependencies than
huge, complicated solutions. Remember that
KISS principle…
5. Choose system integration software that
allows you to maintain or change easily
• There are several system integration tools you could
use to automate data synchronization or to
integrate workflows and processes. Linx is one such
tool.
• Linx is a powerful, intuitive piece of low-code
system integration software. It is one of the only
solutions that combines the power of low-code
development with advanced business integration.
Topic 3 - System
Integration Testing
What is System Integration Testing?

• System Integration Testing is


defined as a type of software
testing carried out in an integrated
hardware and software
environment to verify the behavior
of the complete system. It is
testing conducted on a complete,
integrated system to evaluate the
system's compliance with its
specified requirement.
Why Do System
Integration Testing?
• System integration is becoming more important due
to the increasing advances in automation
technology, and the associated need to simplify
processes for easier management. An integrated
system will streamline your processes, reduce costs
and ensure efficiency.
Why do System Integration Testing

• It helps to detect Defect early


• Earlier feedback on the acceptability of the individual module will be
available
• Scheduling of Defect fixes is flexible, and it can be overlapped with
development
• Correct data flow
• Correct control flow
• Correct timing
• Correct memory usage
• Correct with software requirements
How to Do System
Integration Testing
How to do System Integration Testing

• It's a systematic technique for constructing the program structure


while conducting tests to uncover errors associated with
interfacing.
• All modules are integrated in advance, and the entire program is
tested as a whole. But during this process, a set of errors is likely
to be encountered.
• In the field of software testing, the term stubs and drivers refers to
the replica of the modules, which acts as a substitute to the
undeveloped or missing module.
• Stubs are used to test modules and are created by the team of
testers during the process of Top-Down Integration Testing.
• Drivers, like stubs, are used by software testers to fulfil the
requirements of missing or incomplete components and modules.
These are usually complex than stubs and are developed
during Bottom-Up approach of Integration Testing.
• Drivers can be utilized to test the lower levels of the code, when the upper
level of codes or modules are not developed. Drivers act as pseudo codes
that are mainly used when the stub modules are ready, but the primary
modules are not ready.
Stubs and Drivers: Example
• Consider an example of a web application, which consists of 4
modules i.e., Module-A, Module-B, Module-C and Module-D. Each
of the following modules is responsible for some specific activity or
functionality, as under:
• Module-A ? Login page of the web application.
• Module-B → Home page of the web application.
• Module-C → Print Setup.
• Module-D → Log out page.
Topic 4 - Hardware to
Software Integration
Testing
Hardware to Software Integration Testing

• It is the testing of the Computer Software Components (CSC)


operating within the target computer environment on the high-
level functionality. It concentrates on the behavior of the
integrated software developed on the target environment.
Requirement based Hardware-Software Integration Testing
• The aim of requirements-based hardware/software integration
testing is to make sure that the software in the target computer
will satisfy the high-level requirements. Typical errors revealed by
this testing method includes:
• Hardware/software interfaces errors
• Violations of software partitioning.
• Inability to detect failures by built-in test
• Incorrect response to hardware failures
• Error due to sequencing, transient input loads and input power
transients
• Feedback loops incorrect behavior
• Incorrect or improper control of memory management hardware
• Data bus contention problem
• Incorrect operation of mechanism to verify the compatibility and
correctness of field loadable software
Hardware Software Integration deals
with the verification of the high-level
requirements. All tests at this level are
conducted on the target hardware.
• Black box testing is the primary
testing methodology used at this
level of testing.
• a powerful testing technique because it
exercises a system end-to-end.
Topic 5 - Software to
Software Integration
Testing
Software to Software Integration Testing
• It is the testing of the Computer Software Component operating
within the host/target computer
• It focuses on the behavior of a CSC in a simulated host/target
environment. The approach used for Software Integration can be
an incremental approach ( top-down, a bottom-up approach or a
combination of both).
Incremental Approach
Incremental testing is a way of integration testing. In this type of testing
method, you first test each module of the software individually and then
continue testing by appending other modules to it then another and so
on.
Incremental integration is the contrast to the big bang approach. The
program is constructed and tested in small segments, where errors are
easier to isolate and correct. Interfaces are more likely to be tested
completely, and a systematic test approach may be applied.
• There are two types of Incremental testing
• Top down approach
• Bottom Up approach
Top Down Approach
• In this type of approach,
individual start by testing
only the user interface,
with the underlying
functionality simulated
by stubs, then you move
downwards integrating
lower and lower layers as
shown in the image
below.
• Starting with the main control
module, the modules are integrated
by moving downward through the
control hierarchy
• Sub-modules to the main control
module are incorporated into the
structure either in a breadth-first
manner or depth-first manner.
• Depth-first integration integrates all
modules on a major control path of
the structure as displayed in the
following diagram:
Bottom-Up Approach
• Bottom-up integration begins construction and testing with
modules at the lowest level in the program structure. In this
process, the modules are integrated from the bottom to the
top.
• In this approach, processing required for the modules
subordinate to a given level is always available, and the
need for the stubs is eliminated.
This integration test process is performed in
a series of four steps
• Low-level modules are combined into clusters that
perform a specific software sub-function.
• A driver is written to coordinate test case input and
output.
• The cluster or build is tested.
• Drivers are removed, and clusters are combined
moving upward in the program structure.
Big Bang Approach
• In this approach, all modules are not integrated until and
unless all the modules are ready. Once they are ready, all
modules are integrated, and then its executed to know
whether all the integrated modules are working or not.
• In this approach, it is difficult to know the root cause of
the failure because of integrating everything at once.
• Also, there will be a high chance of occurrence of critical
bugs in the production environment. This approach is
adopted only when integration testing has to be done at
once.

You might also like