오픈 api 기반...

6
2015 년도 한국철도학회 춘계학술대회 논문집 KSR2015S216 오픈 API 기반 철도이용객정보공유시스템 OPEN API-based Rail passengers information sharing system 전성근 * , 최용호 * , 박현범 * , 박재홍 * Seong-Keun Jeon * , Yong Ho Choe * , Hyeon Beom Park * , Jae Hong Park * Abstract Topics covered in this study is an open API-based railway passengers information integration information sharing system building based on public data open door policy. To tackle this problem is open API-based information sharing system technology trends and leading systems analysis in order. New service creation and transportation combines are very difficult. Because mostly files of fixed information and particular S/W are made up poorly readable. Threrfore, the main result of this paper are design and realization of open API linked system based on REST interface of real-time service and inproved readable to railroad passengers. Keywords : REST interface, OPEN API, information sharing system 본 논문에서는 공공데이터 개방정책에 따른 오픈 API 기반 철도이용객정보 통합 정보공유시스템 구축 방안을 도출하고자 오픈 API 기반 정보공유시스템 기술동향과 선행시스템 분석을 하고자 한다. 현재 공공데이터 개방정책에 따라 오픈 된 대부분의 정보는 활용빈도가 낮은 고정정보 위주의 데이터와 특정소프트웨어 형태의 기계 가독성이 떨어지는 파일 형태로 구성되어 있기 때문에 새로운 서비스 창출이나 타 교통수단의 연계가 어렵다. 따라서 본 논문을 통해 철도이용객에게 실시간 정보 제공과 기계 가독성이 향상된 REST 인터페이스 기반 오픈 API 공유시스템을 설계 및 구현하고자 한다. 주요어 : REST 인터페이스, 오픈API, 정보공유시스템 1. 서 론 오픈API기반 정보공유시스템이란 2.0대표기술로서 자신이 보유한 정보나 애플리케이 등을 공개하여 정보시스템에서 활용할 있도록 제공하는 사용자 중심의 서비스이다. 과거 이용자는 단순히 정보를 이용하는 구조에서 현재는 다양한 맞춤형 서비스를 요구하 있으며, 오픈API활용한 다양한 매쉬업(Mash-Up)서비스를 제공하고 있다. 대중교통정 보도 오픈API활용하여 다양한 연계서비스를 제공하고 있으나, 특정 교통수단에 대해서만 제공하여 정보가 단절되고 있다. 철도이용객정보 또한 사용자의 맞춤형 정보제공 요구에도 불구하고 운영기관별로 폐쇄적 정책의 서비스를 제공하여 정보의 교환 연계 방식이 통일

Upload: others

Post on 06-Sep-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

2015 년도 한국철도학회 춘계학술대회 논문집 KSR2015S216

오픈 API 기반 철도이용객정보공유시스템

OPEN API-based Rail passengers information sharing system

전성근*, 최용호*, 박현범*, 박재홍*

Seong-Keun Jeon*, Yong Ho Choe *, Hyeon Beom Park *, Jae Hong Park*

Abstract Topics covered in this study is an open API-based railway passengers information integration information sharing system building based on public data open door policy. To tackle this problem is open API-based information sharing system technology trends and leading systems analysis in order. New service creation and transportation combines are very difficult. Because mostly files of fixed information and particular S/W are made up poorly readable. Threrfore, the main result of this paper are design and realization of open API linked system based on REST interface of real-time service and inproved readable to railroad passengers. Keywords : REST interface, OPEN API, information sharing system

초 록 본 논문에서는 공공데이터 개방정책에 따른 오픈 API 기반 철도이용객정보 통합

정보공유시스템 구축 방안을 도출하고자 오픈 API 기반 정보공유시스템 기술동향과 선행시스템

분석을 하고자 한다.

현재 공공데이터 개방정책에 따라 오픈 된 대부분의 정보는 활용빈도가 낮은 고정정보

위주의 데이터와 특정소프트웨어 형태의 기계 가독성이 떨어지는 파일 형태로 구성되어 있기

때문에 새로운 서비스 창출이나 타 교통수단의 연계가 어렵다.

따라서 본 논문을 통해 철도이용객에게 실시간 정보 제공과 기계 가독성이 향상된 REST

인터페이스 기반 오픈 API 공유시스템을 설계 및 구현하고자 한다.

주요어 : REST 인터페이스, 오픈API, 정보공유시스템

1. 서 론

오픈API기반 정보공유시스템이란 웹2.0의 대표기술로서 자신이 보유한 정보나 애플리케이

션 등을 공개하여 타 정보시스템에서 활용할 수 있도록 제공하는 사용자 중심의 서비스이다.

과거 이용자는 단순히 정보를 이용하는 구조에서 현재는 다양한 맞춤형 서비스를 요구하

고 있으며, 오픈API를 활용한 다양한 매쉬업(Mash-Up)서비스를 제공하고 있다. 대중교통정

보도 오픈API를 활용하여 다양한 연계서비스를 제공하고 있으나, 특정 교통수단에 대해서만

제공하여 정보가 단절되고 있다. 철도이용객정보 또한 사용자의 맞춤형 정보제공 요구에도

불구하고 운영기관별로 폐쇄적 정책의 서비스를 제공하여 정보의 교환 및 연계 방식이 통일

되지 않고, 서비스되는 정보 또한 기계 가독성이 떨어지는 파일 형태와 활용빈도가 낮은 정

적 정보 위주의 데이터로 구성되어 있다.

따라서 본 논문에서는 철도이용객정보 개방을 위해 각 운영기관의 데이터를 통합 및 동적

정보 제공과 오픈API기반 정보공유시스템 설계·구현을 통해 단절된 철도이용객정보를 제

공할 수 있는 인프라를 구축하고자 한다.

* ㈜유코아시스템

2. 본 론

2.1 오픈API기반 정보공유시스템 기술동향

오픈 API의 인터페이스 표준기술은 REST(Representational State Transfer), SOAP(Simple Object

Access Protocol) 등이 있으며 각각의 특징은 다음과 같다.

REST 기술은 인터넷 서비스 기업이 중심이 되어 독점적으로 제공하던 서비스, 정보 등을

개방하기 위해 개발되었다. 확장성 생성 언어(XML)와 하이퍼텍스트 전송 규약(HTTP)을 포

함한 웹 기반 기술 및 프로토콜을 사용하는 모델로 세션 트래킹과 같은 부가적인 전송 레이

어가 없이 간단한 인터페이스를 제공한다. 정보자원에 대한 접근은 HTTP의 기본 메소드인

GET/PUT/POST/DELETE 형태로 접근하고, 전달되는 자원의 형태는 XML, JSON, (X)HTML 등

다양한 표현이 가능하지만, XML을 기본으로 하고, 선별적으로 JSON을 제공한다.

SOAP 기술은 기업의 시스템간 상호 운용을 위해 개발되었다. 단순 객체 접근 프로토콜로

확장성 생성 언어(XML)와 하이퍼텍스트 전송 규약(HTTP) 등의 기술이 기반이 되는 통신

프로토콜 규약이다. 실제 데이터는 HTTP, HTTPS, SMTP, FTP등 하위 프로토콜을 이용하기 때

문에 기업간의 방화벽 등을 안전하게 통과할 수 있다. 또한 웹 서비스를 제공하기 위한 표

준이 잘 정립되어 있으며, 에러 처리에 대한 내용이 기본적으로 내장되어 있으나 복잡한 구

조로 인하여 오버헤드가 있으며 REST 기술에 비해 상대적으로 무겁고 속도가 느리다.

Table 1 SOAP, REST 인터페이스 기술 비교

SOAP REST

배경 및 현황

• 기업을 위한 비즈니스 응용에서 출발 • IBM, Oracle 등 웹 서버 벤더에서 주창 • SOA의 서비스는 대부분이 비즈니스 컴포

넌트로서의 의미를 가짐

• WEB2.0 서비스 애플리케이션에서 출발 • 구글 등 인터넷 서비스 기업에 의해 주창 • 지도나 뉴스, 가젯 등과 같이 UI성격을 갖는 서비스가 많음

장점

• 프록시와 방화벽에 제한 없이 통신 가능 • 플랫폼, 언어, 통신에 중립적 • 웹 서비스를 제공하기 위한 표준이 정립 • 에러 처리에 대한 내용이 기본내장 • 분산 환경에 적합

• SOAP 보다 개발하기 단순하므로 학습곡선

이 작고 도구가 거의 필요 없음 • 플랫폼, 언어에 중립적 • 간결하므로 추가적인 메시지 계층이 없음

단점

• 복잡한 구조로 인한 오버헤드가 있으며, 이는 SOAP의 확장을 저해

• REST에 비해 상대적으로 무겁고 느림 • 개발 난이도가 높아 개발 환경 지원 필요

• Point-to-point 통신 모델을 가정하므로 상호

작용하는 분산환경에는 유용하지 않음 • 보안, 정책 등 표준이 없음 • HTTP 통신 모델만 지원

현재의 문제점 어려운 사용법, 무거운 프로토콜 표준의 부재, 관리가 어려움

오픈 API 기술을 비교·분석한 결과 SOAP 방식보다 REST 방식이 개발하기 쉽고 속도가

빠르며 가볍기 때문에 사용자의 활용도가 더 높게 분석되었다.

2.2 정보공유시스템 현황

정보공유시스템 현황 분석을 위해 오픈 API기반 정보공유를 제공하는 4개 철도운영기관과

타 교통수단 및 국내 주요 포털의 제공 현황을 분석한다.

Table 2 오픈API기반 정보공유 현황

서비스 건수 인증 형식 인터페이스 데이터 전송 포맷

서울메트로 서비스 7건

오퍼레이션29건

서비스키 인증 REST

XML, XMLF, XLS, JSON

서울특별시 도시철도공사

서비스 5건 오퍼레이션 5건

XML, XMLF, XLS, JSON

부산교통공사 서비스 6건

오퍼레이션6건 XML, XLS, JSON

대전광역시 도시철도공사

서비스 5건 오퍼레이션 5건

XML

국토교통부 (공공데이터포털)

서비스 10건 오퍼레이션 36건

서비스키 인증

REST

XML, JSON

국토교통부 (ITS 국가교통정보센터)

서비스 6건 오퍼레이션 6건

XML, JSON

한국항공공사 서비스 5건

오퍼레이션 5건 XML, JSON

네이버 서비스 7건

오퍼레이션 26건 서비스키 인증, oAuth2.0

(로그인 인증 모델)

XML, JSON(카페,블로그)

다음 서비스 9건

오퍼레이션 41건 XML, JSON

기 구축된 9개의 오픈API기반 정보공유 서비스 현황을 분석한 결과 전파가 빠르고, 쉽게 개

발이 가능한 REST 기술방식으로 서비스를 제공하고 있으며 데이터 교환 포맷은 XML을 기본

으로 제공하고, JSON 또는 XLS 포맷을 선별적으로 제공하고 있다. XLS포맷을 제공하는 사례를

보면 통계자료 등 분석 가능한 자료를 제공할 때 많이 사용하는 것으로 파악된다. 웹 서비스

보안은 대부분의 서비스가 서비스키 인증방식을 사용하여 제공하고 있으며, “서울 열린 데이터

광장”은 서비스키 인증방식과 약관 동의를 거쳐 제공하는 방식 또한 사용하고 있지만 약관 동

의는 자료를 호출 할 때마다 동의해야 하는 불편함이 있기 때문에 초기 데이터 확인용으로 많

이 사용한다. 민간 포털의 카페나 블로그 등 로그인과 연동되는 서비스는 ID, Password 도용의

위험이 크기 때문에 토큰 제공방식을 사용하기 위해 표준화된 oAuth2.0 방식을 사용하고 있다.

그 외 XML 암호화·전자서명, SSL 등이 있으나 적용 시 성능이 급격하게 감소되고, 사용자의

활용이 복잡하기 때문에 거의 모든 사이트에서 제공하지 않고 있다.

제공되는 정보의 현황은 철도운영기관별로 정보를 제공하고 있기 때문에 정보의 분류 및 명

칭이 표준화되지 않고, 오퍼레이션의 요청 및 응답 메시지 또한 동일 정보를 불일치하게 제공

하고 있다. 항공, 시외버스, 고속버스 정보는 협회, 조합 등에서 시스템 및 정보를 통합 운영

중이기 때문에 교통수단별로 지역간 제공되는 정보의 불일치가 발생하지 않고 표준화된 정보

를 제공하고 있으며 결제관련 시스템과 연동을 제공하고 있다. 이 경우 정보의 제공뿐만 아니

라 예약·예매의 원스톱 서비스 제공을 원하는데, 철도정보는 운영기관의 정보 연계가 되지 않

고 고속철도의 결제시스템은 코레일을 통해서만 제공 받을 수 있다.

민간 포털의 정보공유 서비스 방식은 과거 데이터 중심의 API 제공방식을 벗어나 라이브러

리 중심의 API 서비스로 변화되고 있다. 라이브러리에서 자료를 컨트롤 함에 따라 사용자의

활용이 쉬어지고 API 변경 시 명세가 변경 될 경우 이용자 또한 변경이 필요하지만 라이브러

리를 활용하면 변경된 라이브러리를 제공하기 때문에 사용자의 유지보수 비용이 감소한다. 하

지만 라이브러리를 활용하면 데이터를 원하는 형식으로 변경이 불가한 경우가 많다.

2.3 철도이용객정보 오픈API 통합 논리 모델링 방안

각 철도운영기관별로 운영되는 데이터의 구조가 상이함에 따라 데이터셋 구축 시

데이터베이스 모델별로 정보를 인식하기 위한 식별자(유일키)를 정의하고, 식별자에 해당하는

각 정보는 항목(Entity)을 설정하여 차량 정보 엔터티 6개, 운영 정보 엔터티 5개, 역사 정보

엔터티 8개, 이용객 정보 엔터티 4개를 통한 통합 논리 모델링 방안을 도출하였다. Fig.1 은

통합 논리 모델의 역 정보 데이터셋 구축 예로서 철도운영기관코드, 호선코드, 역 코드를

활용하여 “코레일 일반철도 서울역”인 경우와 “서울특별시 도시철도공사 1호선 서울역”,

“부산교통공사 1호선 부산역”의 역 정보 유일키 정의 예시 이다. 이와 같이 동일한 명칭의

정보도 식별자를 활용하여 식별 가능한 정보로 구축하고자 한다.

Fig. 1 통합 논리 모델링 방안 및 논리 모델

기초데이터 구축은 철도운영기관의 시스템기초데이터, 차량/역사 실시간 측정데이터 및 기타

수집된 자료를 표준화하여 가공·정제 후 데이터 셋에서 운영하고자 한다.

2.4 정보공유시스템 구축 방안

2.4.1 정보공유시스템 구축을 위한 요구사항

정보공유시스템 구축을 위해 설문 및 이해관계자를 대상으로 요구사항을 수렴하여 서비스

요구사항 4건, 소프트웨어 요구사항 5건, 사용자 편의성 3건, 보안 요구사항 1건의 요구사항

을 도출 하였다.

Fig. 2 정보공유시스템 구축을 위한 요구사항

2.4.2 정보공유시스템 구축을 위한 시스템 기능 구성도

시스템 구성은 이용자가 맞춤형 정보를 요구하면 관리자 검토 후 오픈API서비스 등록시

스템을 활용하여 서비스를 등록한다. 이후 오픈 API 서비스를 적용하면 이용자는 오픈API정

보공유시스템을 활용하여 자료를 요청하고, XML, JSON, XLS 포맷으로 정보를 제공 받을 수

있도록 구축 하고자 한다.

Fig. 3 정보공유시스템 기능 구성도

3. 결 론

본 논문에서는 시스템 구축을 위하여 기 구축된 시스템의 현황 및 기술동향을 검토하였다.

대부분의 정보공유서비스가 REST 인터페이스 방식으로 구현되었으며, XML, JSON, XLS 포맷

으로 서비스를 제공하고 있었다. 또한 동적 정보를 제공하기 위해 센서를 활용하여 실차 테

스트를 진행 및 데이터 통합을 위한 모델링 설계를 수행하여 데이터 통합방안, 오픈API기반

정보공유시스템 구축 방안을 제시하였다. 향후 분석된 결과를 활용하여 시스템의 구체적인

설계 및 구현을 진행 할 예정이다.

이를 통해 철도이용객정보를 활용하여 길 찾기, 주변정보, 교통약자, 철도 편의시설정보

등의 다양한 서비스가 창출되어 교통정보의 단절이 해소될 것으로 기대된다.

Fig. 4 오픈API기반 정보공유시스템 구성요소

후 기

본 연구는 국토교통부 철도기술연구사업의 "ICT기반 철도 이용객 정보 제공기술 개발"

연구비지원(14RTRP-B086929-01)에 의해 수행되었습니다.

참고문헌

[1] 박유미, 문애경, 유현경, 정유철 etal. (2010) SOAP 기반 웹서비스와 RESTful 웹서비스 기술

비교, 전자통신동향분석, 제25권 제 2호, pp. 113-119.