how to integrate itsm software by service-flow

Post on 20-Nov-2014

1.670 Views

Category:

Technology

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

Service-Flow's presentation about how to integrate ITSM tools with Service-Flow. Learn what's the difference between traditional integrations and Service-Flow ITSM Integration service.

TRANSCRIPT

How to Integrate ITSM Software

Kai Virkki, Chief Architect

2014 © Service-Flow Corp.

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

Agenda

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 challenges: process

Vendor

Customer

Simple example process

End 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

?? ?? ?? ??

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 challenges: technology

Point-to-point

Hub-and-spoke

Different integration styles

Different integration technologies

FTPFTP

SOAP

REST

Database

<XML/> {JSON}

Email File Transfer (FTP) Web services

Let’s go through the most common ones…

Email Integration

Customer ITSM Software Vendor ITSM Software

Customer’s Mail server

Vendor’s Mail server

email

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

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

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

File Transfer (FTP)

Customer ITSM Software Vendor ITSM Software

Vendor’s FTP server

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

Web services

Customer ITSM Software Vendor ITSM SoftwareAPIAPI

ITSM vendor proprietary web services APIs Most reasonably modern software offer some form of an API

– For inserting, updating and querying tickets

Web services

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

Can things be this easy?

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?

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?

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?

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?

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

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?

FTP

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

Web services

What then?

Enterprise Service Bus (ESB) to the rescue!

ESB

Customer ITSM Software Vendor ITSM SoftwareAPIAPI ESB

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

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?

ESB

Industry best-practice: ESB to every Enterprise!

Customer ITSM Software Vendor ITSM SoftwareAPIAPI ESB ESB

Software X Software Y

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?

How about this?

Customer ITSM Software Vendor ITSM SoftwareAPIAPI

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

Global Service Bus /

Message Broker?

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

Service-Flow

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

Service-Flow: Broker

Conversation example

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

Service-Flow: Operations

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.

Service-Flow: Security

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

Example integration flow

S-F

Serv

ice-F

low

arc

hit

ectu

re

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

1: Create ticket

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

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

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

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

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

Service-Flow architecture

Service-Flow

Vendor Y

Customer X

Efecte ITSM Suite

ServiceNow

Web API

Direct Web Services

Service-Flow

Efecte Adapter

ServiceNow Adapter

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

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

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

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.

Lessons learned

top related