設計、テストではREST APIの理解と外部サービスを使うことへの意識が求められる。従来の開発スタイルよりも制約が大きいので、制約の見極めと制約下での設計、テストが肝要だ。特有の考え方に慣れないと、想定外の作業やコスト増に直面してしまう。

 本PARTでは、設計担当者やテスト担当者が押さえておくべき、従来のシステム開発との違いを説明しよう。

 まず、設計担当者、テスト担当者が共通で知っておくべきことは、SaaS APIの仕様だ。

 最近のSaaS APIはほとんどがREST APIである。REST APIは「https://api.example.com/[バージョン番号]/[機能名]」といったURLで指定された「APIエンドポイント」に、HTTPリクエストを送る。リクエストの方法としては、GET(取得)、POST(登録)、PUT(更新)、DELETE(削除)といった「メソッド」がある。APIエンドポイントに対して異なるメソッドでリクエストを送ると、メソッドに対応した挙動をする。

 例えば、会計SaaSのfreeeで取引機能を扱う「Deals」というAPIは、GETメソッドでリクエストを送ると、JSON(JavaScript Object Notation)形式で記述された取引一覧が返ってくる。POSTメソッドは取引の登録に使う。JSON形式で記述した取引データをリクエストのボディ部に記述して送ると、取引データがfreeeに登録される。登録されたデータがレスポンスとして返ってくる。

 設計担当者は、こうしたREST APIに対する操作を使い、スクラッチ開発したアプリケーションとSaaSを連携するシステムを設計する(図1)。SaaS APIごとに制約があるので、それを踏まえて設計する必要がある。どのような制約があるのか、事前の検証も欠かせない。

図1●設計担当者、テスト担当者が検討すべきこと
図1●設計担当者、テスト担当者が検討すべきこと
SaaS API特有の制約の検証と、制約を前提にした設計とテストの検討が必要になる
[画像のクリックで拡大表示]

 テスト担当者は設計、実装されたシステムに対してテストを実施する。SaaSという「外部のサービス」が存在する点が従来と異なる。

 ここからは設計前の検証、設計、テストとフェーズを分けて、設計担当者やテスト担当者が注意すべきポイントを見ていこう。

この先は日経クロステック Active会員の登録が必要です

日経クロステック Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。