Postmanとは?詳しく解説します
概要
ここでは、Postmanについて説明させていただきます。 Postmanは、APIライフサイクルの各ステップを簡素化して優れたAPIをより速く作成でき、その最大の特徴がAPIです。APIを構築して使用するためのAPIプラットフォームとして、現在約2000万人の開発者に利用されております。同社はAPIファーストの世界や、それらを取り巻くテクノロジーに対して革新的な行動を起こしていると言えるでしょう。また、APIツール、API設計など最大のネットワークを閲覧し、構築したものを世界中の開発者と共有することが可能です。
市場からの評価
Postmanの市場からの評価について説明させていただきます。
Postmanが2022年のサマーレポートでG2によってランク付けされた、ベストAPI管理ツールの第1位とベストAPI設計ツールの第1位を獲得しました。これは市場からの高い評価を証明するものです。
また、APIファーストの世界でAPIを構築して使用するための単一のプラットフォームを提供することで、API管理を再定義するという同社のビジョンが評価されたということでもあるでしょう。
Postmanの共同創設者兼CEOであるAbhinav Asthanaが最近発表したように、API管理は元のルーツを超えて進化しております。 さらに、APIはアプリケーション間の結合剤として始まりましたが、最近のソフトウェアの主要な構成要素として登場していることの一つの証明とも言えるでしょう。 これらはPostmanのコミュニティ全体で、APIファーストのアプローチ (アプリケーションがAPIを介した内部サービスと外部サービスの相互接続として概念化および構築される開発モデル) の台頭が見られます。APIはもはや後付けではありません。実際、2021年のState of the API Reportでは、これまで以上に多くの企業がAPIファーストの哲学を採用していることがわかりました。
PostmanとAPIについて
現在、Postmanを使用している組織は世界で5万を超えております。
また、Fortune500の98%がAPIプラットフォームに依存しており、Paylocity、Ping Identity、Twitterなどの業界のリーダーが、Postmanの多くの機能を活用しております。
すでに述べたように、同社はAPIファーストの世界を実現し、そのビジョンを追求するために様々な工夫を行ってきました。開発者はより高速で優れたソフトウェアを構築しますが、これはAPIライフサイクルのすべてのレベルでシームレスなコラボレーションが必要となります。また、APIが後付けではなく主要な構成要素として扱われることが非常に重要です。
Postmanが大事にするAPIに関する価値観は以下の通りです。
APIは最優先事項と見なされ、APIは簡単に使用できます。また、APIは簡単に見つけられて利用することが可能です。
Postmanは、この現実を受け入れるAPIファースト企業の増加に力を与えるために、様々なテクノロジーを提供していると言えるでしょう。
すべての業界で、開発者はAPIの使用にますます多くの時間を費やしています。
2021年のState of the API Reportでは、回答者の49%が、組織の開発努力の半分以上がAPIに費やされていると述べています。これは、前年から10%近く増加しており、今後もこの傾向が続くことは間違いありません。
さらに、回答者の67%が、APIファーストの哲学を採用するという点も特徴です。
このようなエビデンスから、あらゆるビジネスやソフトウェア開発の現場においてAPIセキュリティが話題になり、APIは最優先事項として扱われるようになりました。
品質エンジニア、DevOps、エンジニアなど、APIを実際に使用する人々の職種は拡大しており、さらに複雑化しているといってもいいでしょう。
プロダクトマネージャー、データサイエンティスト、シチズンデベロッパー、運用担当者なども大きな関連性がある職業に該当します。
これはすべて、テクノロジー環境の拡大と並行して起こっています。既存のテクノロジーは変化し成熟しており、暗号化とWeb3への新しいアプローチが採用され、議論され、標準化されていることも大きく影響しております。このような時代の変化の中でPostmanがその進化するビジネスニーズに対応し、需要が拡大しているとも言えるでしょう。
パブリックAPIネットワーク
PostmanのパブリックAPIネットワークについて説明させていただきます。
PostmanにパブリックGraphQL APIコレクションを追加することで、Postmanが自動補完、GraphQLスキーマの自動イントロスペクションなどを開発者にサポートし、常に最新のAPIで構築することが可能となりました。
これによってバージョン、そしてさらに多くのことがユーザーにとってかけがえのない利便性をもたらします。
実際に導入後のユーザーからのフィードバックは素晴らしいものでした。
Postmanに実装した最も強力な機能の1つは、組織がPostmanのパブリックAPIネットワーク上にAPI用のパブリック ワークスペースを作成できる機能です。これによって開発者は「最初のAPI呼び出しまでの時間」をより速く取得できます。 Postman CollectionsがAPIテストの標準として機能することで、TwitterやSalesforceなどの組織は、APIプログラムでパブリック ワークスペースを活用して大きな成功を収めています。 Postmanのユーザーを利用して、SalesforceチームがパブリックAPIネットワークを利用し、APIへの追加トラフィックを促進したため、Salesforceパブリックワークスペースは200,000ヒット以上、50,000フォーク以上を受け取りました。
Microsoft Graphチームは、100,000人を超えるユーザーがPostmanを介してAPIにアクセスする、成功を収めたパブリックワークスペースも立ち上げました。
パブリックワークスペースは、開発者がAPIにアクセスして操作するための手順を最小限に抑えます。
開発者はPostmanにサインアップし、APIキーを取得し、Postmanコレクションを使用して最初のテストを開始するのと同じくらい簡単です。
組織から直接提供される最適なAPI構成により、パブリックワークスペースは開発者に実践的な例を提供することで、APIプロバイダーとコンシューマーの両方を支援します。これにより、混乱が軽減され、組織からのAPIサポートの必要性が軽減されます。
Amadeus for Developersは、開発者がコードを1行も書かずにセルフサービスAPIを探索して使用できるようにするPostman Collectionを維持しています。
これにより、開発者は1つの場所ですべてのAPIにアクセスできるため、オンボーディングプロセスが削減されます。
リクエストごとにアクセストークンを追加したり、APIリクエストを最初から作成したりするなどの手動タスクを気にする必要はありません。
また、Postmanは、サポートクエリやチュートリアルの作成に頻繁に使用するため、開発者関係チームの日常業務の時間を節約します。
Postmanと現在の環境
Postmanと現在におけるソフトウェア開発について、いくつかのポイントを説明させていただきます。
過去10年間、エンタープライズ組織は、ソフトウェア開発ライフサイクルに関して信頼できる情報源を確保するために多額の投資を行ってきたことはよく知られております。また、それらはクラウドサービスやDXなど、新しいテクノロジーの流れの中でさらに重要な役割を担うことになっています。
例えば、GitHub、GitLab、Bitbucketなどは代表的な例であり、これらのツールはチーム間でGitベースのワークフローを導入しています。
ソースコードのデプロイを手動でスケーリングおよび管理し、チームによる再現性の欠如に対処し、常に問題に対応することは現在のエンタープライズ組織における課題です。
このように、絶え間なく変化し、急速に拡大するコードベースを導くための信頼できる情報源を必死は重要です。
ソース管理と継続的な統合および展開パイプラインは、エンタープライズ開発チームがソフトウェア開発に関して同じ認識を持つための鍵となっています。
Postmanは、このようなソフトウェアとビジネス環境において同じ方向に一緒に進むために必要な、繰り返し可能なワークフローを手に入れました。
具体例を出しながらいくつか説明させていただきます。
ソース管理
Postmanはソース管理に重要な役割を提供します。
ソース管理には長い歴史がありますが、GitHubに基づいて構築された現代的なアプローチにより、ソフトウェア開発チームはコードの変更を管理し、複数のソースからのコントリビューションにアクセスすることを可能とします。
また、新しく創造的な方法で競合が発生したときに解決できるようにもなりました。GitHubは、Gitの上に切望されていたソーシャルレイヤーとコラボレーションレイヤーに投資しました。これにより、リリースプロセスにおける技術的な摩擦だけでなく、その過程で発生する多くの人的対立も軽減されました。
最新のソース管理は今日のソフトウェアの提供方法を変えており、 APIライフサイクルの定義と前進に役立つものです。既存のソフトウェア開発ライフサイクルと同じ方法でそれらは実現します。
これにより、チームは生成するAPIの背後にあるコードや、ソース管理を使用して使用するAPIを管理するだけでなく、チーム間で一貫した方法でAPIを設計、開発、文書化、テスト、および監視するために必要なアーティファクトも管理するようになります。
ソース管理は、エンタープライズコードベースだけでなく、今日のビジネスを支えている個々のAPIコントラクトの真実にもなっています。
継続的な考え方
ソフトウェア開発の流れとして外すことができないのが継続的な考え方であり、Postmanはそれらを達成するために様々なテクノロジーを提供します。
過去10年間でソース管理が進化し、より社会的かつ協調的になるにつれて、CI/CDパイプラインが出現し、現在ではソース管理に組み込まれています。
これによってコードのビルドとデプロイが再現可能であり、テストを通じて内部ガイドラインを満たしていることを確認できます。
ソース管理が最新のソフトウェア開発を形作ったのに対し、APIは継続的な統合とデプロイの考え方を導入することでソース管理を形作りました。
これをCI/CDと呼んでいます。最新のCI/CDは、APIのデプロイとAPIとの統合をサポートするコードを常に確実にデプロイできるという、APIプロデューサーとコンシューマーの現実を反映しています。
これは、コードベースのすべてまたは一部を展開するための反復可能なパイプラインを提供することにより、ビジネスのニーズを継続的に満たします。
継続的な自動化
継続的な自動化はあらゆるソフトウェア開発とテストにおいて非常に重要な役割を提供します。
ソース管理とCI/CDパイプラインの融合によって継続的な考え方が定着し、開発のペースが変わり、チームは自信を持ってより頻繁にリリースできるようになりました。
CI/CDパイプラインテストを機械可読コレクションの形でモジュール化することで、この自動化を標準化された方法でパイプラインを超えて広げることができました。
同じテストスクリプトを使用して、テストを自動化するだけでなく、モニターを介してスケジュールされた、
または開発中にクライアント、スクリプト、またはCLIによって実行されるパイプラインレベルでAPI呼び出しを自動化することもできます。
コレクションは、テストを自動化し、複数のAPI呼び出しを1つの意味のあるワークフローにデイジーチェーン接続する必要性から生まれました。
テストの自動化は、自動化とオーケストレーションの無限の世界へと開花しました。
これにより、開発者だけでなく非開発者も自動化にアクセスできるようになりました。
これらのワークフローは、公開検索または非公開検索を介して検出可能であり、さまざまな環境を使用して反復可能であり、既存のAPMソリューションで自動化の結果をパイピングすることで観察可能です。展開と統合の自動化を優先するという考え方により、チームはより少ないリソースで毎日より多くのことを行うことができます。
速度と方向性
ソース管理とCI/CDへのモジュール化されたアーティファクト駆動型のアプローチを組み合わせることで、開発者向けの自動化ツールボックス全体が最適化します。
開発者は、マイクロサービスをデプロイして統合することから始めることができますが、その後、APIを提供して機能させる方法を自動化するためのより多くのエージェンシーが得られます。具体的には、APIの開発、デプロイ、および維持中の平凡なタスクを自動化できるようになります。
APIファーストの世界で、開発者の作業は、必要なAPI呼び出しの数によって定義されます。APIアーティファクトは、作成するAPIや使用するAPIを定義するだけでなく、インフラストラクチャ、システムの下にあるAPIも定義します。
コラボレーション環境のプラットフォームを介した APIの自動化により、個人とチームの速度が向上し、全体としてまったく新しい方向に進む可能性があります。
このようにソース管理、CI/CD、テスト自動化、およびますます明確に定義されたソフトウェアだけでなく、API開発ライフサイクル全体にわたるより広範な自動化の総合的な進化は、DevOpsと呼ばれる新しい哲学を生み出しました。
この哲学、実践、およびツールの組み合わせにより、チームはより高いレベルの品質を実現しながら、マイクロサービスとAPIをより高速に提供できるようになりました。
チームは、ビジネスに対する高まる要求を満たすために必要なリソースと機能を展開および統合する際に、変化を受け入れます。
ソース管理基盤に自動化の考え方を追加することで、チームは物事をより速く、より適切に、より確実に行うことができます。
Postmanとシフトレフト
Postmanがシフトレフトを実現するための具体的な機能やアクションについて説明させていただきます。
シフトレフトとは、単体テストや統合テストなど、特定の種類のテストをソフトウェア開発プロセスの早い段階に移動するという考え方を指す用語です。
シフトレフトの背後にある考え方は、これを行うことで、プロセスの早い段階でバグを見つけて、大きな問題になる前に修正できるというものです。
それぞれについて詳しく解説させていただきます。
API Builder
PostmanのAPI Builderは、API仕様を管理および維持するための優れたインターフェイスを開発者に提供します。
これらの仕様は、Postmanで直接開発したり、JSON/YAMLファイルからインポートしたり、Gitコードストレージシステムから同期したりできます。
統合されたエラー検出に加えて、PostmanのAPI Builderは、設計時にAPI仕様で検出されたセキュリティ上の欠陥をAPI設計者に通知するためのインテリジェントなセキュリティ警告を提供します。設計時にこれらを検出することで、これらのエラーが本番環境に移行したときに発生する可能性がある影響を大幅に軽減できます。
コレクション、ドキュメント、テスト、モック、モニターなど、API開発およびテストプロセスのさまざまな要素をスキーマに接続できます。
PostmanでAPIをバージョン管理し、要素を特定のバージョンおよびリリースに接続できます。
PostmanのAPIをリモートGitリポジトリと同期することもできます。
API Builderは、開発者に対して以下の機能を提要します。
- ・APIの設計資産を保存および管理
- ・API仕様の誤りを早期発見
- ・セキュリティの問題について警告を受け、修正に関する適切なアドバイスを提供
モックサーバー
Postmanのモックサーバーを利用することで以下のメリットがあります。
一点目がコードを記述せずにAPIの動作を模倣することができる点です。
二点目がアプリケーションの他の部分で使用できるカスタマイズ可能な例を生成することができる点です。
開発ライフサイクルの一部として使用される場合、生成されたユーザーインターフェイス開発者がアプリケーション内で表示されるデータを提供するために活用できます。
さらに、Postmanはサンプルコンテンツを展開せずにほぼ瞬時に更新する機能を提供します。この迅速な開発アプローチにより、チームは、さまざまな状況 (大規模なデータセット、データが返されない、エラー状態など) が発生した場合のUIへの影響をすばやく理解できます。
コラボレーション
開発チームと品質チームおよびテストチームとのコラボレーションもその特徴です。Postmanのコラボレーションツールを利用することでそれらを実現することが可能です。メリットは以下の三点です。
一点目がテストケースの作成を早期に開始して、コードの品質サイクルをスピードアップことができる点です。
二点目がテストで協力し、テストが効果的に作成されていることを確認することができる点です。
三点目が多くの異なる環境 (ローカルから実稼働まで) に対して同じことをテストすることができる点です。
Postman環境を使用して、品質チームは必要なすべてのテストケースを記述し、それらを模擬サーバーに対して実行できます。
コードがビルドされて共有QAサーバーに配信されると、新しいPostman環境を作成して、テストケースをこの新しいサーバーに向け、そこで実行することができます。
品質チームがモックサーバーとライブサーバーの間でテストケースをすばやく切り替えることができるようにすることで、違いをすばやく特定し、コードに欠陥がある可能性がある場所を指摘できるようになります。
作成中に開発者がこれらのテストにアクセスできるようにすることで、開発者と品質チームの両方が、テストが最も効率的かつ効果的な方法で作成されているかどうかについて話し合い、判断できるようになります。
監視ツール
Postmanの監視ツールを利用するメリットは以下の三点です。
一点目が既存のテストを使用して、デプロイされたシステムに対してスケジュールに従って実行することができる点です。
二点目が顧客が発見する前に問題を特定し、顧客体験を向上させることができる点です。
三点目がデプロイされたコードの品質に自信を持つことができる点です。
品質チームがテストを作成すると、これらのテストは次の回帰テストサイクルまで棚上げされ、開発チームと品質チームは次のリリースに進むのが一般的です。
このアプローチの課題は、本番環境に侵入したバグがサポートチケットを通じて顧客によって特定されることが多く、その結果、カスタマーエクスペリエンスが低下し、開発サイクルがバグ修正によって中断されることです。
まとめ
いかがでしたでしょうか? Postmanについて説明させていただきましたので、参考にしていただけましたら幸いです。
PostmanとAPIガバナンスについて |