How to Integrate ITSM software by Service-Flow

Preview:

DESCRIPTION

Service-Flow's Chief Architect Kai Virkki explains pros&cons of traditional ITSM software integrations and the benefits of using Service-Flow

Citation preview

Integration Service | www.service-flow.com | flow@service-flow.com

How to integrate ITSM software?

Kai Virkki, 24.9.2013

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Agenda

ITSM integration challenges Different ways to integrate Service-Flow Lessons learned

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Integration challenges: process

Processes– Probably different at both ends– How to connect at the interface?– There might be more than 2 parties

Customer and n vendors is typical

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Vendor

Customer

Simple example processEnd user creates

new ticket

Create new ticket

Transfer to support group:

Vendor 1

Create new ticket Assign ticket

Update ticket information:

Status: Assigned

Handle ticketResolve

ticket: Status: Resolved

Update ticket information:

Status

Update ticket information:

Worklog

Update ticket info: Status:

Solved

End

End

?? ?? ?? ??

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Integration challenges: technology

– ITSM data: How to transfer? How to route? How to map? How to transform?

– What tools to use?– ITSM software integration interfaces not very well

documented or standardized– How to connect ITSM software that is usually located

inside corporate network, protected by firewalls etc?

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Different integration styles

Point-to-point

Hub-and-spoke

Integration Service | www.service-flow.com | flow@service-flow.com

Different integration technologies

FTPFTP

SOAP

REST

Database

<XML/> {JSON}

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Let’s go through the most common ones…

Email File Transfer (FTP) Web services

Integration Service | www.service-flow.com | flow@service-flow.com

Email Integration

Customer ITSM Software Vendor ITSM Software

Customer’s Mail server

Vendor’s Mail server

Integration Service | www.service-flow.com | flow@service-flow.com

emailINCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

Integration Service | www.service-flow.com | flow@service-flow.com

email

From: servicedesk@example.comTo: support@vendor.comSubject: [Ticket #INC-1234] Printer broken

Body:”Customer: jorma@ankkalinna.fiDescription: My local printer”

INCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

Many ITSM systems can transform tickets to mail out-of-the-box

Integration Service | www.service-flow.com | flow@service-flow.com

email

From: servicedesk@example.comTo: support@vendor.comSubject: [Ticket #INC-1234] Printer broken

Body:”Customer: jorma@ankkalinna.fiDescription: My local printer”

INCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

TICKETID: TN-987Title: Printer brokenCustomer: Example.comWorklog:”Customer: jorma@ankkalinna.fiDescription: My local printer”…

Many ITSM systems can transform tickets to mail out-of-the-box

Many ITSM systems can create tickets from mail out-of-the-box

Integration Service | www.service-flow.com | flow@service-flow.com

File Transfer (FTP)

Customer ITSM Software Vendor ITSM Software

Vendor’s FTP server

Integration Service | www.service-flow.com | flow@service-flow.com

FTP

<incident> <ID> INC-1234 </ID> <Subject> Printer broken </Subject> <Description> My local printer <Description> <Category>12</Category> <Status>Untouched</Status> <Customer>jorma@ankkalinna.fi</Customer> ..</incident>

INCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

TICKETID: TN-987Title: Printer brokenDescription: My local printerCustomer: jormaState: NewCategory 1: AMS ServicesCategory 2: ……

1. Generate some text presentation of the Incident

2. Write (XML) file to FTP server

1. Read (XML) file from FTP server

2. Transform customer format to vendor format

3. Translate data

Integration Service | www.service-flow.com | flow@service-flow.com

Web services

Customer ITSM Software Vendor ITSM SoftwareAPIAPI

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Web services

ITSM vendor proprietary web services APIs Most reasonably modern software offer some

form of an API– For inserting, updating and querying tickets

Integration Service | www.service-flow.com | flow@service-flow.com

P2P Web services

Customer ITSM Software Vendor ITSM SoftwareAPIAPI

1.1: Send ticket data to insert

1.2: Reply with ID (success)

n.1: Send ticket data to update

n.2: Reply with success

Integration Service | www.service-flow.com | flow@service-flow.com

Can things be this easy?

Integration Service | www.service-flow.com | flow@service-flow.com

email?

Integration Service | www.service-flow.com | flow@service-flow.com

email

From: servicedesk@example.comTo: support@vendor.comSubject: [Ticket #INC-1234] Printer broken

Body:”Customer: jorma@ankkalinna.fiDescription: My local printerCategory: 12Status: Untouched”

INCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

TICKETID: TN-987Title: Printer brokenDescription: My local printerCategory: ASMState: AssignedCustomer: jormaCustomer ID: INC-1234…

How about getting something from the mail body?

Integration Service | www.service-flow.com | flow@service-flow.com

email

From: servicedesk@example.comTo: support@vendor.comSubject: [Ticket #INC-1234] Printer broken

Body:”Customer: jorma@ankkalinna.fiDescription: My local printerCategory: 12Status: Untouched”

INCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

TICKETID: TN-987Title: Printer brokenDescription: My local printerCategory: ASMState: AssignedCustomer: jormaCustomer ID: INC-1234…

Or translating category/status?

Integration Service | www.service-flow.com | flow@service-flow.com

email

From: servicedesk@example.comTo: support@vendor.comSubject: [Ticket #INC-1234] Printer broken

Body:”Customer: jorma@ankkalinna.fiDescription: My local printerCategory: 12”

INCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

TICKETID: TN-987Title: Printer brokenDescription: My local printerCategory: ASMState: AssignedCustomer: jormaCustomer ID: INC-1234…

Or getting the customer incident ID?

Integration Service | www.service-flow.com | flow@service-flow.com

email

From: support@vendor.comTo: servicedesk@example.comSubject: #TN-987# Printer broken

Body:”Customer: jormaDescription: My local printerCategory: ASM…”

INCIDENTID: INC-1234Subject: Printer brokenDescription: My local printerCategory: 12Status: UntouchedCustomer: jorma@ankkalinna.fiCreation Time:……

TICKETID: TN-987Title: Printer brokenDescription: My local printerCategory: ASMState: AssignedCustomer: jormaCustomer ID: INC-1234…

What if vendor cannot add our ID to subject in correct format? How then target the correct incident?

Integration Service | www.service-flow.com | flow@service-flow.com

FTP?

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

FTP

Do the ITSM tools offer the functionality to send/receive ticket to/from FTP?– Most of them don’t

Do the ITSM tools offer the functionality to transfer to recipient format?– Most of them don’t

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

FTP

Who is responsible of the FTP server? Did transfer to the other system succeed? How are files kept in correct temporal order? Who removes files when they have been

read?

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Web services?

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Web services

Do the ITSM tools offer functionality to send ticket data to other systems?– Many of them don’t

Do the ITSM tools offer functionality to transform to recipient format?– Most of them don’t

Do the ITSM tools offer functionality to handle the response?– Most of them don’t

Integration Service | www.service-flow.com | flow@service-flow.com

What then?

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Enterprise Service Bus (ESB) to the rescue!

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

ESB

Customer ITSM Software Vendor ITSM SoftwareAPIAPI ESB

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

ESB

Customer ITSM Software Vendor ITSM SoftwareAPIAPI ESB

ESB:• Queries or receives tickets from

customer ITSM system• Transforms to vendor format• Sends to vendor using the vendor

ITSM software API• Handles resends in case of

connections failures etc.• Handles errors

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

ESB

Who owns the ESB, customer or vendor? Integrations need to be implemented to ESB,

they don’t magically happen– Adapters to ITSM tool APIs– Transformations– Translations– Retries and error-handling

Who understands the ESB logs when there are errors?

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Industry best-practice: ESB to every Enterprise!

Customer ITSM Software Vendor ITSM SoftwareAPIAPI ESB ESB

Software X Software Y

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Industry best-practice: ESB to every Enterprise!

Customer ITSM Software Vendor ITSM SoftwareAPIAPI ESB ESB

Now we have 3 integrations to build!• Customer ITSM software – ESB• ESB – ESB• Vendor ITSM software - ESB

Who builds the integrations?Who supports them?

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

How about this?

Customer ITSM Software Vendor ITSM SoftwareAPIAPI

Global Service Bus / Message Broker

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Global Service Bus / Message Broker?

Take the great ideas of ESB and take them out of the enterprise to the internet and offer as a service

ITSM Software has APIs, leverage them– Ready-made adapters

Robust queuing for highly-available and reliable integrations

Customers and vendors don’t need to manage integration platforms and integrations

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow

Not an integration platform, but a ready-to-use service for ITSM integrations

Secure, scalable, reliable and highly available message brokering

Offered as an SaaS from the cloud Customers can concentrate on their ITSM

tools and processes

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow: Broker

Route messages (tickets creates/updates) between parties with routing rules

Routing rules selected based on message sender and contents

Map between the parties– Different mapping types and formatters

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Mapping examples: Copy

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Routing and mapping examples: Translate

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Routing and mapping examples: TableTranslate

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Routing and mapping examples: Template

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Routing and mapping examples: Default

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow: Concepts

Flow:– An integration business case

E.g. SAP Support outsourcing

Conversation– All messages related to the same tickets

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Conversation example

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow: Operations

The service is operated by the devops team No maintenance windows:– Upgrades done live– Usually once per week, but could be multiple

times per day Measured availability for individual service

components during last year at least 99,99%– Less than 53 minutes downtime per year

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow: Security

All network communications between ITSM tools encrypted (SSL, 256bit).

Deployed into a cloud Platform-as-a-Service (PaaS) that runs on top of the Amazon cloud in the EU.

Amazon cloud is very secure and has certifications to prove it:– SAS70 Type II, ISO 27001, PCI DSS Level 1 etc.

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow Architecture

SaaS Provider Z

Secure Cloud Infrastructure

Service-FlowCustomer X

Network

ITSM Tool X

Customer Y Network

ITSM Tool Y

ITSM Tool Z

SSL

SSL

SSL

Web Browser

HTTPS

Adapter X

Adapter Z

Adapter Y

User Interface

Broker

Integration Service | www.service-flow.com | flow@service-flow.com

Example integration flow

S-F

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow architecture

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

1: Create ticket

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow architecture

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

2: Send Efecte ticket XML to Service-Flow

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow architecture

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

3: Transform to Service-Flow internal format

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow

ServiceNow Adapter

Efecte Adapter

Service-Flow architecture

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

4: Select recipient, map and transform data, keep track of the ticket conversation

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow architecture

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

5: Transform to ServiceNow web services format and send to ServiceNow

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow architecture

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

6: Insert to correct table, e.g. incident

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow architecture

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Service-Flow UI Demo

S-F

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Lessons learned

Processes from different organizations can be hard to map together– Good partners are needed to help with this– KISS-principle (Keep It Simple, Silly!)

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Lessons learned

Most ITSM software isn’t built with integrations in mind– Those who design integration interfaces don’t

always have experience writing integrations– File attachments are the Achilles’ heel of many

integration interfaces– Integrating can be technically challenging, but

once it’s done, it can be reused as an adapter

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Lessons learned

It might take a long time to get network access to an ITSM software inside corporate network– There aren’t any great solutions to this, but

organizations starting to use SaaS ITSM tools helps– Involve security and network people early in the

project

Integration Service | www.service-flow.com | flow@service-flow.com Integration Service | www.service-flow.com | flow@service-flow.com

Lessons learned

Many organizations are suspicious about cloud services– Cloud providers have to take security very seriously

and get applicable certifications and audits to prove their trustworthiness

– How much can organizations really trust on their own people and internal security?

– Fact of life: When doing B2B integrations, there has to be some places, where data flows outside company internal networks.

Integration Service | www.service-flow.com | flow@service-flow.com

Thank you!

@kaivirkki

Mail: kai.virkki@service-flow.com

Recommended