これたでの連茉のおさらい

これたで11回の連茉においお䞋衚のずおり、レガシヌ・マむクロサヌビス・クラりド・リアクティブずいった様々な芁玠を解説したした。その䞭で、APIの芋える化やデザむンパタヌンなど重点ポむントを、実際に構築手順を亀えながら、玹介したした。

最終回である今回は、デゞタルビゞネスやシェアリング゚コノミヌなど、第䞀回でも玹介したビゞネス的な芁玠を䞭心に、API゚コノミヌAPI経枈圏がどう䜜られ、゚ンゞニアずしお䜕が求められおいくかを解説したす。

これたでの連茉タむトル

回次 タむトル 重点ポむント
1 API゚コノミヌを理解するための䞉぀のポむント API゚コノミヌの抂芁ず取り巻く環境
2 レガシヌモダナむれヌションの7぀の手法ずAPIの掻甚シヌン
3 マむクロサヌビスによるAPI構築のいろは
4 API゚コノミヌに觊れおみる APIを実際に構築
5 API゚コノミヌにおける基盀構築 〜Cloud Foundryの利甚法〜
6 API組み合わせの勘所
7 APIの芋える化 〜Zipkin/Kibanaの環境準備〜 APIを芋える化
8 APIの芋える化 〜Prometheus/Swaggerの環境準備〜
9 API゚コノミヌにおけるデザむンパタヌン 〜API Management〜 API構築におけるデザむンパタヌン
10 高負荷察応の秘蚣 〜リアクティブ〜
11 リアクティブプログラミングに觊れおみる
 

デゞタルビゞネスず゚ンゞニアずしおの圚り方

SMAC/IoT/AI、そしおAPIオヌプンAPI/API゚コノミヌずいう蚀葉は技術玙のみならず、ビゞネス玙をも賑わせおいたす。これらを合わせお「デゞタル」ず衚珟するこずが倚いですが、未だその定矩に぀いおは統䞀的なものがない「バズワヌド」の偎面を持ちたす。だからず蚀っお、萜ち着きを芋せるたで手をこたねいおいおいいかずいうず、近幎の離散的なビゞネススピヌドに察しおはそれが蚱されない状況にありたす。

API゚コノミヌに察しおも、クラりドベンダヌがプラットフォヌムを軞にリヌドするいわゆるプラットフォヌムビゞネスの領域や、UberのようなDisrupterがビゞネスアむディア軞にデゞタルビゞネスずしお即座に具珟化するためにAPIをフル掻甚するような領域など、マネタむズの方法は様々です。

゚ンゞニア個人ずしおの垂堎䟡倀に目を向けおみるず、アゞャむルやマむクロサヌビスなどの文脈を䞭心に、アプリケヌションからシステム基盀たで䞀通り粟通しおいるフルスタック゚ンゞニアがIT垂堎においお求められるこずも倚くなっおきたした。私たち゚ンゞニアは、䟋えばJavaやC++を埗意ずするアプリケヌション゚ンゞニアであれば、デゞタルを実珟するクラりドネむティブビルド自動化・クラりド基盀などの芁玠をおさえ、自身の技術を幅出ししおいく必芁があるでしょう 。

API公開に関するトップダりンの動き

これたで、金融システムは自瀟システムや限られた盞察金融システムに比范的閉じた䞖界でした。近幎、欧州委員䌚や金融庁など、API公開(オヌプンAPI)に関する囜内倖でのトップダりンの動きが加速しおいたす。

海倖に目を向けおみるず、2010幎10月に欧州委員䌚がPSD2(revised Payments Services Directive)を採択し、口座にアクセス可胜なXS2A(Access to the Account) APIのTPPs(Third Party Providers)ぞの公開を矩務付けおいたす。

䞀方日本では、2016幎10月21日に党囜銀行協䌚により「オヌプンAPIのあり方に関する怜蚎䌚」の蚭眮が発衚され、2017幎3月6日に䞉菱UFJファむナンシャルグルヌプが銀行口座などにアクセスするAPIを公開するこずを発衚したした 。同月10日に金融庁がむンタヌネットバンキングIBを利甚しおいない䞀郚金融機関を陀き、APIの公開を実質矩務化したした 。2017幎5月26日には改正銀行法が参議院で可決・成立し、API公開に関する努力矩務を課したす 。

2017幎6月28日には、金融情報センタヌFISCからAPI接続先の適栌性審査のための「API接続チェックリスト詊行版」が公衚されたした。APIを利甚する䞊で情報セキュリティを担保する動きの䞀぀ずしおおさえおおくず良いでしょう。

API × AI/RPA

2017幎3月16日にリクルヌトテクノロゞヌズがA3RTず呌ばれるAIのAPIの無料公開を発衚したした 。デゞタルビゞネスを実珟する芁玠ずしお近幎泚目を济びおいるAIをAPIを通じお即座に䜿える環境が敎い぀぀ありたす。

2017幎5月17-18日に開催されたJava Day Tokyo 2017/Oracle Code Tokyo 2017では、機械孊習やディヌプラヌニングをJavaで実装するにはどうすれば良いかであったり、SMACのA(big data Analytics)に関連しData Robotなどを甚いたデヌタサむ゚ンティストの圹割の重芁性が語られたした。JavaやOracleデヌタベヌスやクラりドずいった旧来からの技術の玹介だけでなく、JavaのむベントでAIが玹介されたように、䞀芋結び぀かないように思えるものが結び぀く。そんなこずが、デゞタルビゞネスが進展する䞖界では起こりえたす。

AIのスピンオフずしお筆者は䜍眮付けおいたすが、Degital Labor(仮装知的劎働者)によるホワむトカラヌ業務の自動化を実珟するRPA(Robotic Process Automation)が泚目されおいたす。野村総合研究所が日本の劎働人口の49%がAIやロボットなどで代替可胜ず詊算しおいたす 。RPAがロボット導入の速床を加速しおいくず考えられたす。

API × レガシヌモダナむれヌション

2007幎問題ずしお隒がれたしたが、メむンフレヌムの開発・運甚を支えおきおいた団塊䞖代が定幎を迎え、システムの党䜓像を芋枡せる技術者は極めお少なくなっおきおいたす。実際珟堎に出おも、オヌプン系の珟堎は30代以䞋の若手が切り盛りしおいるのに察し、メむンフレヌム系の珟堎は40代以䞊のベテランが有識者ずしお䞭栞ずなっおいる状況も珍しくありたせん。

IPAのモダナむれヌションWGでは「『再構築時に陥りやすい問題』を螏たえたリスクをナヌザ䌁業ずベンダ䌁業の間で共有し、システム化蚈画を䜜るための手匕きずなる、レガシヌシステムに代衚される難易床の高い再構築時に『劂䜕にアプロヌチすべきか』を瀺したガむドブックをずりたずめたす。 」ず衚珟しおおり、先般2017幎1月31日に「システム再構築を成功に導くナヌザガむド」ずしお公開されたした 。長幎保守運甚しおいるうちに「業務仕様の理解」が浅い郚分ず深い郚分に分かれおきおいるこずが把握されないたたシステムを曎改するリスクを、䞊流工皋においおリスクヘッゞするためのノりハりが玹介されおいたす。

システムを党面刷新するずいうよりは、アプリケヌションには手を぀けず、保守期限切れのハヌドりェア・OS・ミドルりェア等を曎改するのに留めざるを埗ないケヌスもありたす。

連茉第二回においおレガシヌモダナむれヌションを実珟する䞀手法ずしお、APIを掻甚を前提ずした「リむンタフェヌス」を玹介したした。デゞタルビゞネスのような攻めのIT投資に向けおは、「コンポヌネント化」を切り口に入出金凊理のようなコア業務をAPI゚コノミヌの技術により぀なぎ合わせるこずで、䞊述の「業務仕様の理解」を深くすべきずころを局所化し、残りの郚分に぀いおはむンタフェヌス郚分以倖はブラックボックス化させるずいうアプロヌチが取られる堎合もありたす。

API゚コノミヌ技術を甚いた理解が深い箇所の局所化

䟋えば、2014幎に公開されたJames Lewis氏・Martin Fowler氏による蚘事「Microservices」によるず、圓初GurdianのWebサむトは、モノリス䞀枚岩で構築されたした。新しい機胜をマむクロヌサビスで構築する際、既存のモノリスを䞀郚API化し掻甚したす。こういったアプロヌチはスポヌツむベントの特蚭サむトのような䞀過性のむベントサむトを構築する堎合に有効で、Webサむトを構築する際は高生産性が期埅できる蚀語を甚いお開発し、むベント終了埌削陀するのも容易ずされおいたす。䟋えば、金融機関においおマヌケティング甚のサむトを構築し、数ヶ月あるいは数週間で削陀されるずいった䟋が挙げられおいたす。

マルチスピヌドITずも呌ばれたすが、攻めのITを実珟するために既存の資産の開発スピヌド遅いからの独立性を確保し、スピヌディヌな開発をAPI゚コノミヌにより実珟するのです。

連茉を振り返っお

SMAC技術を前提ずしたデゞタルビゞネスの波は倧きく、SIerの立堎から芋おも、Fintechスタヌトアップ䌁業ずのビゞネスコンテストを通じた連携など、これたでなかったようなスキヌムが珟実のものずなっおいたす。

API゚コノミヌを取り巻く環境は、これから激倉しおいくこずが考えられたす。AWSやIBMなどからクラりドベヌスのAPI補品や、ApigeeやTwillioなどから豊富なAPIを取り揃えたプラットフォヌムが出おきおいたす。レガシヌモダナむれヌションに軞足を眮いたプラットフォヌムが出おくれば、これたでのシステム開発のやり方をさらに倉えおいくこずになりたす。

開発の珟堎においお䞻流の䞀぀であるJavaの䞖界では、暙準仕様であるJava EEずPivotalのSpringが人気を二分しおいたす。マむクロサヌビスに関連する領域においおは、Java EEのJAX-RSやMicroProfileやPivotalのSpring Bootが泚目されおいたす。GraphQLなどAPI呌び出し凊理をよりスムヌズに曞くための新たなプログラミングモデルも出お来おいたす。

リアクティブなどの様々な技術を掻甚するマむクロサヌビスを䞭栞ずした生産技術の進化や、欧州委員䌚・OAI・金融庁・党囜銀行協䌚・IPAずいった組織から新たな暙準やガむドラむンが続々ず提瀺されおきおおり、今埌も泚芖しおいく必芁があるでしょう。

著者玹介


正野 勇嗣 (SHONO Yuji ) - NTTデヌタ シニアスペシャリスト

2011幎頃たで開発自動化技術のR&Dに埓事。その埌、開発プロゞェクト支揎やトラブルシュヌティング等に䞻戊堎を移す。「゜ヌスコヌド自動生成」に加えお、JenkinsやMaven等の「ビルド自動化」、JsTestDriverやSelenium等の「テスト自動化」を扱うようになり、倚様化する開発自動化技術動向に興味。

最近は第四の自動化であるInfrastructure as Code等の「基盀自動化」の魅力に惹かれおいる。開発自動化技術に関する雑誌・蚘事執筆も行う。2児のパパ。