PaaSはさまざまなアプリケーションソフトを構築・稼働させるためのプラットフォームをインターネットを経由して提供するクラウドサービスの一種です。開発コストを抑えられる、保守運用の手間を削減できるなどのメリットがあり、業務効率化やDX(デジタルトランスフォーメーション)の観点から注目が高まっています。

この記事ではPaaSの基本的な特徴や機能、利用するメリット・デメリット、主要なPaaSツールなどを紹介します。

PaaSとは?

まずはPaaSについての基本知識を押さえておきましょう。

PaaSの意味

PaaSとは「Platform as a Service」の略で、「パース」と読みます。従来自社のサーバ内などで構築していたアプリケーションソフトや、それを稼働させたりするためのプラットフォーム一式を、インターネット上で提供するサービス形態です。いわゆる「クラウドコンピューティング」の一形態となります。

もともとエンドユーザー向けにオンラインを通じてサービス提供するSaaSがありましたが、PaaSは開発プラットフォーム自体を外部に開放しています。企業をはじめとしたユーザーは、その環境の中で自社に合ったサービスを構築して、展開することが可能です。

代表的なPaaS

世界的に有名なPaaSのサービスには、次のようなものがあります。

・Amazon Web Services(AWS)

・Microsoft Azure

・Google Cloud Platform(GCP)

AWSはAmazonが手がけるPaaSで、世界最大級の通販サイトであるAmazonの知名度やブランド力を生かしてシェアを拡大してきました。いくつかの機能、役割によってさまざまなサービスが用意されています。

・AWSの主なPaaSサービス

Amazon EC2Amazon CloudWatch サーバ、リソースの管理やモニタリング
Amazon S3 データストレージサービス
Amazon CloudSearch 検索機能の設定、管理サービス

Microsoft AzureはMicrosoft社が提供するPaaSです。.NET、Java、PHPなどさまざまな開発用言語が使えるほか、仮想マシンにWindowsサーバが選べるといった点はMicrosoftらしいサービスになっています。

・Microsoft Azureの主なPaaSサービス

Virtual Machines オンライン上に展開された仮想マシンを利用できる
Azure Storage クラウド上でファイルやデータの保管または共有をする機能
Mobile Apps モバイルアプリケーションの設計、構築をアシストする機能

PaaSが求められている背景

PaaSは次に紹介するような、企業を取り巻く環境変化に対応し、またビジネスを効率化するために有効であることから、注目を集めています。

災害やトラブル、犯罪対策に適している

災害やトラブル、犯罪などが起きたときにどのように事業を継続するかまとめたものをBCPといいます。BCPとは「Business Continuity Plan」の頭文字を取った言葉で、「事業継続計画」のことです。実際には「災害やトラブルに見舞われても、事業を通常通り継続できる体制を整える」ということもBCPに含む形で、各社は対応を強化しています。

震災や新型コロナウイルスの感染拡大などを受けて、決まった場所にだけデータを蓄積し、オフィスからしかアクセスできないビジネス環境は、BCP上リスクが高いと見られるようになってきています。そのため、BCP対策の一環として、オンライン上にプラットフォームを構築し、非常事態時にもビジネス継続がしやすいPaaSに注目が集まっているのです。

初期費用を抑えることができる

開発工程の多さにもよりますが、従来はアプリケーション開発を自社内で行うとなると、ある程度まとまった費用が必要となるのが一般的でした。そのため、スタートアップや中小企業は開発費用の捻出に苦慮しがちでした。大企業でもシステム開発費用がコスト上の課題になることも少なくありませんでした。

その点、PaaSは初期費用が小さく、「従量課金モデル」を採用しているケースが多いため、ランニングコストはかかっていくものの、初期費用を抑えることができます。企業のコスト管理という点で相性がよく、PaaSの利用が進む理由の1つとなっています。

リモートワークなど多様な働き方に対応できる

セキュリティ上の対策は別途施す必要がありますが、極論をいえばPaaSはインターネットに接続できる環境があれば、どこからでもアクセスしてサービスの開発・運用を継続できます。

新型コロナウイルスの感染拡大を機に、テレワークの環境を整備する企業が急速に増えました。そのときにインターネット上でプラットフォームを提供するPaaSならではの特徴が、改めて注目を浴びました。

リモートワークに関する記事はこちらから

PaaSとIaaS、SaaSの違い

PaaSと同様に近年普及したのが、IaaS、SaaSです。いずれもクラウドサービスの一種ですが、それぞれクラウド事業者が管理する範囲、つまりサービス上でできることの範囲が違います。

3つの提供形態

SaaSは「Software as a Service」、IaaSは「Infrastructure as a Service」の略です。PaaSと同様にクラウドサービスの一種で、似たようなサービスを示します。それぞれの違いはクラウド事業者が運用、管理を行う範囲で、次の図のようになっています。

SaaSは、事業者が開発したソフトウェアをインターネット経由で提供するサービスです。

・データをインターネット上に保存

・パソコン・スマートフォン・タブレットなど端末を選ばずにデータにアクセス

・複数の人間が同一データを共有・編集できる

このようにサービス自体は事業者が開発したものをそのまま利用する形態となっています。

PaaSは開発するためのプラットフォーム自体がクラウド上に展開されています。そのため、サービスを利用する企業は、自社が必要とするアプリケーションサービスを、プラットフォーム上で柔軟に開発することが可能です。より多様な機能をクラウド上で開発・管理できるのです。

IaaSは、システム開発や運用に必要なサーバなどの機材とネットワークだけを用意して、オンライン上で提供しているものです。そのため、自分でOSなどを自由に選定して、プラットフォームを構築したうえで、自社の必要とするサービスを開発できます。

PaaSの機能一覧

PaaSにはさまざまな機能が備わっています。ここでは代表的なものを紹介します。

容易な設計・開発の支援

機能 提供内容
開発ツールの提供 コードの記述、コードの編集、構文、デバッグ、またはフレームワーク利用のためのツールを提供
開発環境の提供 ソースコードの共有、進行状況の追跡、アプリケーションの展開を管理する統合開発環境を提供
アプリケーションの配置 アプリケーションを構築、展開、または統合するツールを提供
言語サポート Java、C言語、Pythonなどの各種プログラミング言語や、HTML、CSS、JavaScriptなどの各種フロントエンド言語をサポート
テスト環境の提供 アプリケーションの機能をテストし、アプリケーションの問題を診断・検出する機能を提供
クロスプラットフォーム開発の支援 パソコンやモバイルデバイスなど複数のプラットフォームに対応するための開発オプションを提供

このように、アプリケーションソフトを設計、開発するさまざまな機能が備わっています。システム開発に精通した人材を活用すれば、PaaSサービス上で新しいソフトの開発を完結させられます。今ではノーコード・ローコードでの開発が可能な機能が備わっているサービスもあります。

各種ミドルウェア機能

ソフトウェアの開発・管理をするうえで欠かせない膨大なデータベースの管理や分析、破損した際などに備えたバックアップやリストアの機能も備わっています。

機能 提供内容
データベース管理サービス さまざまなタイプのデータベースオブジェクトや、管理ツールなどをサポート
アナリティクスサービス データの分析とマイニングを行うアナリティクスサービスを提供
バックアップ/リストア アプリケーションとデータのバージョン管理、データのバックアップ/リストア機能を提供

インフラ・ライフサイクル管理

機能 提供内容
自動スケーリング サービスやデータを自動的、または必要に応じて拡大/縮小するツールを提供
ストレージの提供 さまざまな形式のデータをスケーラブルに扱えるクラウドストレージを提供
ネットワーク機能の提供 プロビジョニング、コンテンツ配信、負荷分散、トラフィック管理が行えるネットワーク機能を提供
ライフサイクル管理 Webアプリケーションのライフサイクル全体を管理する

開発したアプリケーションを運用する中で発生するデータのストレージや、ライフサイクル管理などをサポートする機能も付与されています。

PaaSを導入するメリットとデメリット

PaaSにはメリット・デメリットがともにあります。それぞれを比較したうえで、自社にとってメリットがより魅力的だと感じるのであれば、導入を検討するとよいでしょう。

PaaSを導入するメリット

PaaSのメリットは主に次の3点です。

・導入がスムーズで開発コストを抑えられる

PaaS上ではOSやデータベースなどのミドルウェアに相当するシステムはすでに構築済みであり、そこがIaaSとの違いです。そのため、開発者は導入後、すぐアプリケーション開発に着手できます。手間が省けるというのもありますが、プラットフォームを整備するためのコストを抑制できる点もメリットです。

・保守運用の手間を削減

開発したアプリケーションの保守・運用が効率化できます。プラットフォームやハードウェア自体の管理はクラウド事業者が行うため、企業はサービス本体の管理に集中できます。

・コーディングの手間を減少

中にはローコード・ノーコードでアプリケーション開発ができるプラットフォームをもつものもあります。これらのプラットフォームを活用すれば、コーディングにかかる手間も削減できます。

PaaSを導入するデメリット

一方で、PaaSには次のようなデメリットもあります。

・開発の自由度が下がる

プラットフォームは事業者が設定したものを利用することになるため、当然開発環境の自由度は下がります。また、ミドルウェアや使用可能なプログラミング言語も限定されるケースが多いです。より自由な開発環境が求められる場合にはIaaSを検討するとよいでしょう。

・セキュリティ面で注意が必要

セキュリティ面については注意を払う必要があります。パソコンからクラウドネットワークにアクセスする際のセキュリティに注意を払うのは大前提として、クラウド上に置かれるデータのセキュリティは、事業者の質に依存する点でより注意が必要です。

PaaSの活用事例

PaaSを導入したことで得られるメリットについて、ITreviewに集まったレビューをもとに活用事例を紹介します。

誰もが構築可能なデータベースになりうる

「案件管理にて利用開始。この時点では特にレクチャーを受けなくても非常に簡単にデータベースが構築できた。現在ワークフローを検討中。さすがにベンダーからのレクチャーを受けたが、プログラムを書けないスタッフでもやりたい事が10時間程度で構築できた」
▼利用サービス:kintone
▼企業名:株式会社コジマ ▼従業員規模:300-1000人未満 ▼業種:自動車・自転車

https://www.itreview.jp/products/kintone/reviews/73356

リモートワークに最高のプラットフォーム

「とてもカスタマイズがしやすく、企業にとって最適化された状態に作り込むことができる。非エンジニアでなくてもとてもカスタマイズしやすいUI/UXで素晴らしい」
▼利用サービス:Salesforce Lightning Platform
▼企業名:Peach株式会社 ▼従業員規模:20人未満 ▼業種:人材

https://www.itreview.jp/products/salesforce-lightning-platform/reviews/29196

少し高いがサーバの知識がなくてもとりあえず使い始められる

「サーバ管理者がいなくても気軽にアプリケーションの運用をすることができるが、知識がない分お金をかけて管理をするという雰囲気です。サーバやデータベースを物理的にスケールさせることを考えずひとまずアプリを動かすということができます」
▼利用サービス:Salesforce Heroku
▼企業名:株式会社言語社 ▼従業員規模:20-50人未満 ▼業種:情報通信・インターネット

https://www.itreview.jp/products/salesforce-heroku/reviews/49987

GCP上の連携でさまざまなことができる

「Webアプリケーションのインフラを整えなくても簡単に開発ができるのがいい。Google Cloud Platform上の他機能(Cloud Storageなど)と連携することで複雑なシステムを構築することも可能です」
▼利用サービス:Google App Engine
▼企業名:セーバー株式会社 ▼従業員規模:20人未満 ▼業種:ソフトウェア・SI

https://www.itreview.jp/products/google-app-engine/reviews/7564

パワーポイントのようにwebアプリを作れる

「プログラミングの知識がなくても、スマホで動作するアプリを作ることができるものです。ただし、if文などの簡単な条件分岐などの設定は必要となってきますので、プログラミングの知識が少しは必要になりますので気をつけてください」
▼利用サービス:Azure Web Apps
▼企業名:北洋銀行 ▼従業員規模:1000人以上 ▼業種:銀行

https://www.itreview.jp/products/azure-web-apps/reviews/46717

 PaaSを導入する際のポイント

せっかく導入するならPaaSの機能を最大限に活用したいものです。次のようなポイントを意識してPaaSを導入するかどうかや、どのサービスを選ぶかを検討するとよいでしょう。

自社のソフトウェアリソースに合ったものを選ぶ

まず、大前提として、ソフトウェアリソースがそろっているかどうかです。これらが適合していない場合は、かえって開発の手間が増大したり、希望するサービスが開発。運用できなくなったりするリスクがあるため、どのようなリソースのもと開発を進めるのか整理しておきましょう。

ソフトウェアリソースにおける主なポイント

OS(オペレーティングシステム) WindowsかLinuxが準備されているケースが多い
ミドルウェア PostgreSQL、MySQL、Oracleが一般的だが、Amazon RDSやMongoDBを使うことのできるサービスもある
開発言語 代表的なものにはRuby、Java、Python、PHP、Node.jsなどがある。中には独自言語を提供しているサービスもあるので注意
ウイルス対策 そもそも対策ソフトが用意されているかを確認

開発目的にあったものを選ぶ

PaaSはユーザーのターゲット層を絞り込んでいるケースが珍しくありません。

・大規模な商用向け

・スタートアップ向け

・開発初心者でも扱いやすい

・個人開発者向け

また、Webサイト・業務アプリケーション・モバイル・ソーシャルなど、得意分野もPaaSサービスによって異なります。自社の規模や業態と開発するサービス内容を踏まえて、適したものを選ぶことが大切です。

SLA(サービス品質保証)の締結

PaaSはネットワーク上の仮想システムを使うため、セキュリティやサービスに関する責任が曖昧になりがちです。しかし、PaaSのプラットフォームを利用したがゆえに発生したトラブルは、やはりPaaS事業者に責任を負ってもらう必要があるでしょう。

そこで、PaaS導入においてはSLA(サービス品質保証)を締結するのがおすすめです。裏を返せば、SLAの締結がしにくいサービスの導入は避けるのが望ましいといえます。

 PaaSの活用・定着させるためのポイント

導入したPaaSをうまく活用する方法や、社内のメンバーに定着させるためには、次の3点に留意しましょう。

コスト管理の徹底

コスト削減を主目的にPaaSを導入するケースも多いと思います。PaaSは利用するサービスの数や規模などに応じて料金が変化する従量制であることが多いため、不用意に多くのサービスを利用するとコストがかかってしまいます。

うまく効果を得るためには、コスト管理を徹底して、効率的にサービスを利用することが大切です。また、導入前とコストを比較して、もっとも大きな効果が得られるサービス利用の仕方を検討しながら活用していくとよいでしょう。

セキュリティ対策を万全に

セキュリティ対策は、質の高いPaaSサービスであれば事業者側でも十分な対策がされています。しかし、多くの場合、他社と同じ仮想空間を共有する共有型のサービスとなっているため、情報漏えいのリスクを完全になくすことはできません。

また、接続するパソコンやネットワークのセキュリティが低ければ、アカウントの乗っ取りなどリスクが高くなります。長期的に安定運用するためには、自社のセキュリティ対策を万全に施しておく必要があるのです。

Paasを活用できる高い開発・運用スキルをもつ人材をチームに入れる

PaaSではアプリケーションの開発や運用は自社で行う必要があります。そのため、ある程度ソフトウェア開発に精通したメンバーを雇っておくのがおすすめです。

今では、ノーコードで開発ができるサービスも出てきていますが、たとえコーディングが不要でも適切なアプリケーション開発は素人が容易に行えるものではありません。専門性の高い人材を配置しておいたほうが無難でしょう。

PaaSの業界マップ

PaaSユーザーからの評価を知るには、ITreview Gridが便利です。ITreview Gridは、ITreviewに集まったユーザーのレビューをもとに生成された4象限の満足度マップで、顧客満足度と市場での認知度を掛け合わせた結果が、4象限上でのポジショニングとして確認できます。

PaaSに関する製品を比較検討するならぜひITreviewのPaaSページをご覧ください。

まとめ

クラウドサービスの一種であるPaaSは企業のシステム開発コストや手間を削減できるだけでなく、BCP(事業継続計画)の観点でも有効であるなど、メリットの多いサービスです。セキュリティ管理などの注意点もありますが、システム開発の環境に課題を感じている企業は、自社に合ったPaaSサービスの導入を検討してみるとよいでしょう。

おすすめ記事