APIファーストアプローチのソフトウェア開発、成功の秘訣先人の失敗に学ぶ

開発する機能を再利用可能なAPIとして実装することにより、ソフトウェア開発の生産性が向上する。だがAPI化すればいいというものでもない。APIファーストのメリットとともに再利用性を高める方法を紹介する。

2019年12月11日 08時00分 公開
[Cliff SaranComputer Weekly]

 APIは、プログラム的な結び付きを使って他のコードにアクセスできるようにする仕組みだ。これを利用するとソフトウェア開発に要する時間が根本的に短縮する。

 「既にあるものを作るな」という理念がある。機能やアルゴリズムが既にコードになっていて、それにアクセスできるAPIがあるのなら、似たものを一からコーディングするのではなくそのAPIを使うべきだという考え方だ。

 専門家は、ソフトウェア開発にAPIファーストのアプローチを取ればソフトウェア開発の作業を洗練できると言う。そのためには、利用できるAPIを公開し、ある程度のガバナンスを提供するポータルが必要になる。

 AstraZenecaでAPIと統合部門のディレクターを務めるサティシュ・マラム氏は、「基本的に、APIは1回構築して複数回使うことを可能にする」と話す。同氏によると、再利用可能なAPIが適した例は、2つのシステムを統合する必要があり、その統合が複数の場所で使われるケースだという。

 こうした再利用は、英労働年金省(DWP)のIT戦略にとって不可欠になりつつある。DWPで統合部門の責任者を務めるジャッキー・リゲッター氏は次のように話す。「再利用を目的にサービスを構築することが当部門の戦略的目標だ」

 英ロンドンで開催された「MuleSoft CONNECT 2019」(2019年10月)のパネルディスカッションで、リゲッター氏とマラム氏、そしてフェローパネリストのベン・ターナー氏が、APIのメリットと再利用性を踏まえてAPIを構築するためのベストプラクティスについて語った。ベン・ターナー氏は損害保険会社Legal & GeneralのCTO(最高技術責任者)を務めている。

 パネリストらは、APIの概念は企業にとってしばしば捉えにくいものになることに同意する。むしろAPIがどのようなビジネスサービスを実現するかについての議論が必要だとして、ターナー氏は次のように語る。「APIを話題にするのではなく、企業が利用したいサービスを話題にし、それを表す日常のシナリオを見つけることを試みる」

 リゲッター氏によるとDWPは、APIの使用を開始した最初の年にAPIの命名法を工夫し始めたという。以前のAPI名は番号だった。「チームはAPIを番号で呼ぶことをやめた。API名は全て動詞から始めるというルールにした」と同氏は語り、これによってAPIへの考え方が変わったという。

ビジネスの変化

 ビジネス全体で利用できる新しいAPIを開発するプログラムに着手するには、IT部門と事業部門の連携に対する考え方を改めなければならない。アプリケーション開発チームは、特定の業務機能向けにソフトウェアを作成することには慣れているかもしれない。だがAPIファーストのアプローチでは、構築するコードの再利用法をチームで考える必要がある。

 2016年以前、Legal & Generalのソフトウェアプロジェクトはポイントツーポイント接続を利用していたとターナー氏は話す。「いったん構築すれば終わりという考え方だった。事業部門とIT部門はこの姿勢を改め、その考え方をやめる必要があった」

 リゲッター氏は、DWPがひらめきを得た瞬間はスコットランド政府向けのプロジェクトに着手したときだったと語った。そのプロジェクトは英国歳入関税局(HMRC)向けに以前開発したマイクロサービスと多くの類似点があった。「HMRC向けに構築したサービスは再利用できなかった。1つのAPIで5つのことを実行していたためだ」

 開発したマイクロサービスの粒度がもう少し細かければ再利用しやすかったのではないかとチームは考えた。次のプロジェクトはHMRCのマイクロサービスと類似点があるため、チームはより粒度が細かいAPIを開発することにした。「このプロジェクトでは、マイクロサービスを個別のAPIに分けた」(リゲッター氏)

 パネリストは、APIファーストのアプローチを用いてからチームが生産性のメリットを感じ始めたと語った。AstraZenecaのマラム氏によると、チームがAPIファーストのアプローチで構築した最初のプロジェクトでは、従来のポイントツーポイントの統合よりも実際に作業量が減ったが、APIの真の価値は2つ目のプロジェクトで現れたという。「2つ目のプロジェクトでは、再利用可能な(ソフトウェアの)ブロックを組み立てた。そのため、新規開発が必要だったのはプロジェクト全体のほぼ半分程度だった」と同氏は話す。

 農業や環境関連の製品メーカーYara Internationalは、APIの導入に着手した企業の一例だ。同社は、IT部門と事業部門の距離を近づけてソフトウェアを迅速に開発するという広大な構想の一環として、MuleSoftのAPI管理ソフトウェア「Anypoint Platform」を使い始めた。

 Yara InternationalでAPIと統合部門の責任者を務めるパトリック・デ・ザラツィン氏は、API管理の使用動機を説明した。「当社には、プロジェクトについて話し合い、その後1年にわたって計画を進める余裕などない。構想があるときは、誰かが既にそれに取り組んでいる可能性について考えることにしている」

 3年前、Yara InternationalにIT変革が起きた。これによりIT部門と事業部門の距離が近づき「Yara APIエコノミー」という構想が始まった。デ・ザラツィン氏は次のように説明する。「統合にシフトレフト(訳注:プロセスを前倒しで実施すること)という理念を求めた。プログラマーが、より多くのことを系統立って行えるようにしたかった」

 このアプローチにより、同氏が「バイモーダルモデル」と呼ぶものをプログラマーが扱えるようになったという。この「シフトレフト」アプローチにより、プログラマーが独自の方法で問題を解決し、誰もがメリットを得られる方法で考え方を公開することが可能になる。

 ソフトウェア開発者は、公開済みAPIを通じて再利用可能なコードを記述するメリットを理解するのに苦労しているとMuleSoftの創設者であるロス・メイソン氏は考えている。同氏の経験によると、開発者は自身が構築するソフトウェアと、企業が求める結果を結び付けることに難しさを感じているという。

 「開発者は価値についてあまり考えていない。つまり、設計の対象外である無用のITプロジェクトを提供したり、組織内の1つ以上の構成要素に価値を加えるITプロジェクトを提供したりすることは考えていない。当社は、構築するソフトウェアが提供する価値について開発者が考えるようサポートしなければならない」(メイソン氏)

 メイソン氏の他、本誌が話を聞いた人々は多くの点で、IT部門が単にビジネスニーズを提供することから離れる必要性を説いていた。むしろ、ソフトウェア開発者は、公開済みAPIによって何度も再利用可能なサービスを提供しなければならない。それによって、企業が新しいデジタル製品をこれまで以上に迅速に市場投入することが可能になる。

Copyright © ITmedia, Inc. All Rights Reserved.

髫エ�ス�ス�ー鬨セ�ケ�つ€驛「譎擾スク蜴・�。驛「�ァ�ス�、驛「譎冗樟�ス�ス驛「譎「�ス�シ驛「譏懶スサ�」�ス�ス

製品資料 サイボウズ株式会社

「ERP×ノーコードツール」のアプローチを推進するためのポイントとは?

DXが進み、レガシーシステムからの脱却が喫緊の課題となっている今。「ERP×ノーコードツール」のアプローチで基幹システムの刷新に取り組む企業が増えている。そのアプローチを推進するに当たってのポイントを解説する。

事例 サイボウズ株式会社

ローコード/ノーコード開発ツールで実現する、変化に強い組織の作り方

DXの本質は、デジタル技術を駆使して変化に適応する能力を身につけることにある。その手段の1つとして注目を集めているのが、ローコード/ノーコード開発ツールだ。京王グループなどの事例とともに、その特徴やメリットを紹介する。

事例 サイボウズ株式会社

ノーコードツールでDX人材を育成、京セラや日本航空などの事例に学ぶ効果の実態

DX人材の重要性が高まる中、ノーコードツールの活用によって業務改革と人材育成を両立しようとする動きが活発化している。年間約780時間の工数削減を実現した京セラをはじめとする5社の事例を基に、その実態を探る。

事例 アステリア株式会社

ものづくり現場で「足かせ」のアナログ業務、9社の事例に学ぶ業務改善の秘訣

急速に進化するデジタル技術は、製造業などのものづくりの現場にもさまざまな恩恵をもたらしている。しかし、設備点検業務や棚卸業務などの立ち仕事や移動が多い現場では、いまだにアナログ業務が残存し、効率化の妨げとなっているという。

事例 アステリア株式会社

工場・倉庫の「隙間業務」をデジタル化、11社の事例に学ぶ現場DX

あらゆる業界でDXの重要性が増しているが、工場や倉庫の中にはデジタル化が後回しにされている隙間業務が多数ある。その理由を明らかにした上で、それらの業務をモバイルアプリでデジタル化し、現場DXを推進する9社の事例を紹介する。

郢晏生ホヲ郢敖€郢晢スシ郢ァ�ウ郢晢スウ郢晢ソスホヲ郢晢ソスPR

From Informa TechTarget

いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは

いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは
遠隔のクライアント端末から、サーバにあるデスクトップ環境を利用できる仕組みである仮想デスクトップ(仮想PC画面)は便利だが、仕組みが複雑だ。仮想デスクトップの仕組みを基礎から確認しよう。

郢ァ�「郢ァ�ッ郢ァ�サ郢ァ�ケ郢晢スゥ郢晢スウ郢ァ�ュ郢晢スウ郢ァ�ー

2025/05/11 UPDATE

  1. 邵イ驛。DK邵イ髦ェ竊堤クイ遯蘖I邵イ髦ェ�ス鬩戊シ費シ樒クコ�ィ邵コ�ッ�ス貅伉€ツ€邵コ�ゥ邵コ�ス�ス�ソ邵コ�ス�ス邵コ莉」�具ソス�ス
  2. 邵イ險土Torch邵イ讎奇スッ�セ邵イ蜊ヲensorFlow邵イ髦ェツ€ツ€陞滂スア隰ィ蜉ア��邵コ�ェ邵コ�ス�キ�ア陞サ�、陝�スヲ驗吝�繝オ郢晢スャ郢晢スシ郢晢ソス郢晢スッ郢晢スシ郢ァ�ッ邵コ�ョ鬩包スク邵コ�ウ隴�スケ
  3. 遯カ諛翫Σ郢ァ�ー郢ァ�シ郢晢スュ遯カ譏エ�帝€カ�ョ隰厄ソス笘�ォ「迢怜験隰鯉スヲ騾。�・邵イツ€闔�逎ッ莠溽クコ�ョ邵コ貅假ス∫クコ�ョ郢晏生縺帷ケ晏現�ス郢晢スゥ郢ァ�ッ郢晢ソス縺�ケァ�ケ10鬩包スク
  4. Java邵コ�ァ郢ァ�スC邵コ�ァ郢ァ繧��邵コ�スツ€謔滂ソス陟「�スツ€�ス窶イ邵コ�セ邵コ螢シ�ュ�ヲ邵コ�カ邵コ�ケ邵コ�ス2陞滂スァ髫ェツ€髫ア讒ュツ€髦ェ�ス邵コ阮呻ス檎クコ�ス
  5. 邵コ�ェ邵コ諛環€郢ーava邵イ髦ェ�ス遯カ諞コ謫�屐蛛慊€譏エ縲堤クイ險土thon邵イ髦ェ�ス遯カ諛キ莠幃ォッ�コ遯カ譏エ竊醍クコ�ョ邵コ�ス
  6. 邵イ蠕後◆郢晁シ斐Κ郢ァ�ヲ郢ァ�ァ郢ァ�「郢晢ソス縺帷ケ晏現ツ€髦ェ�ス闖エ霈費ソス邵コ貅假ス�ソス貅伉€ツ€CrowdStrike闔�蛟カ�サ�カ邵コ荵晢ス臥ケ晢ソス縺帷ケ晏沺蟋カ騾。�・郢ァ螳夲スヲ迢怜ウゥ邵コ譏エ竕ァ
  7. 髢シ�ス�シ�ア隲、�ァ隶€諛キ�ス郢晢ソス�ス郢晢スォ邵イ譬輸ST邵イ髦ェ窶イ邵イ霓。evSecOps邵イ髦ェ竊楢ーコ�ス邵コ荵昶雷邵コ�ェ邵コ�ス�ス邵コ�ッ邵コ�ェ邵コ諛環ー�ス�ス
  8. 邵コ�ス竏ェ邵コ霈費ス蛾蜜讒ュ��邵コ�ェ邵コ�スツ€遯殫ache HTTP Server邵イ髦ェ竊堤クイ遯殫ache Tomcat邵イ髦ェ�ス鬩戊シ費シ樒クコ�ィ邵コ�ッ�ス�ス
  9. 邵コ譏エ�瑚ュ幢スャ陟冶侭竊鍋ケァ�ェ郢晢スシ郢晏干ホヲ郢ァ�ス郢晢スシ郢ァ�ケ�ス貅伉€ツ€AI隴弱f�サ�」邵コ�ョ邵イ蠕鯉ソス郢晢スウ郢敖€郢晢スシ郢晢スュ郢晢ソス縺醍ケァ�、郢晢スウ陜ィ�ー霑ッ�スツ€髦ェ�ス騾オ貅ス蠍�
  10. 邵イ郢ーava邵イ髦ェホ帷ケァ�、郢ァ�サ郢晢スウ郢ァ�ケ隴∝生竊楢ャ費スイ鬲托スエ邵イツ€陷会ソス鬨セ貅倪�郢ァ驫€ツ€蟒セracle鬮ョ�「郢ァ螽ッツ€譏エ�ス騾�ソス鄂ー邵コ�ィ驕カ荵昶蔓邵コ�ッ邵コ�ス邵コ荵晢ス玖椶�ス

APIファーストアプローチのソフトウェア開発、成功の秘訣:先人の失敗に学ぶ - TechTargetジャパン システム開発 隴�スー騾ケツ€髫ェ蛟�スコ�ス

TechTarget郢ァ�ク郢晢ス」郢昜サ」ホヲ 隴�スー騾ケツ€髫ェ蛟�スコ�ス

ITmedia マーケティング新着記事

news025.png

「マーケティングオートメーション」 国内売れ筋TOP10(2025年5月)
今週は、マーケティングオートメーション(MA)ツールの売れ筋TOP10を紹介します。

news014.png

「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年4月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。

news046.png

「ECプラットフォーム」売れ筋TOP10(2025年4月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。