WebシステムとWebアプリの違いとは:事例やプログラムの中身はどうことなる?

未分類

日常の中で、Webサイト上で買い物をしたり、Youtubeを見たり、何かしらのサービスを使用したことがあるでしょう。それらはWebシステムやWebアプリと呼ばれているものです。

会社で業務を効率化したい、新しいサービスを提供したいとなったとき、WebシステムやWebアプリを開発しようという話が出てくるかもしれません。しかし、実際に利用することになった場合にWebシステムとWebアプリの違いを知らないという人もいるでしょう。

それでは、webシステムとwebアプリの違いは何でしょうか。今回は、WebシステムとWebアプリの違いについて解説していきます。

システム開発とアプリ開発の違いと概念

WebシステムとWebアプリについて説明する前に、システム開発とアプリ開発の違いについて説明します。これらの違いについて知ってからの方が、WebシステムとWebアプリの違いについて想像しやすくなるでしょう。

システム開発は業務を効率化する仕組み全体を作る

システム開発とは、「書類を記載して申請を出す」というような作業を効率化する為に、コンピュータを使用した新たな仕組みを作ることを意味します。

会社では日々の業務で様々な情報を扱います。商品の取引に関する見積書や決算書の作成、作成した書類のファイリング、売上や仕入れの伝票整理等などです。一般的な事務仕事だけでも多くの書類を作成・整理する必要があります。個々の業務に合わせて、顧客の情報を整理する必要もあるでしょう。

これらの情報を整理する際、担当社員が紙の書類に記入して、それを事務が手作業で整理するというようなことをしていては時間も手間もかかり、ミスも発生する可能性があります。また、過去の情報を参照したい場合、紙の書類では一瞬で探すということもできません。

図1.システム開発前

このように時間や手間がかかっている業務作業を効率化したい場合、コンピュータによって効率化された新たな業務の仕組みを作ることをシステム開発と呼びます。

システム開発では、まず業務を効率化するためにどのような機能が欲しいかを決めます。例えば、以下のようになります。

  • 顧客情報の作成、売上計算をボタン一つ押せば実行されるようにしたい
  • 入力したデータの検索ができるようにしたい

これらの要望を整理します。そして、コンピュータを使って以下のようなシステムを実現していきます。

図2.システム開発後

この図にあるサーバーとは、個人が使っているパソコンよりも高性能なコンピュータのことで、そのサーバーに各種書類作成や計算、検索を実行する為のプログラムやデータを保存するデータベースというものを作成していきます。プログラムとは、コンピュータにあらかじめ決められた動作をさせる命令のことです。

このプログラムやデータベースを作成したサーバーを会社に用意して、各社員が自分のパソコンからサーバーに接続して機能を使用することで、業務を効率的に進めていけるようになります。

このようにシステム開発とは、サーバーという入れ物を用意して、そこに業務を効率化するプログラムやデータを保存するデータベース、個々の社員のパソコンとサーバーを接続する通信回線などの仕組み全体を作成することを指します。

アプリ開発は業務を実行するプログラムを作る

一方でアプリ開発では、システム開発の説明で出てきたプログラムを作成することです。アプリとはアプリケーションの略です。アプリケーションは特定の端末で動くように作成されたプログラム群であり、何かしらの処理を実行します。

システム開発の図2のアプリはサーバー上で実行されますが、他にもパソコンやスマホで実行されるアプリもあります。例えば、個人のパソコン(WindowsやMac)で実行されるアプリを開発する場合、システム開発でのサーバーのような入れ物はパソコンが既にあるので、プログラムだけを作成することになります。

つまり、システム開発に対するアプリ開発は、システム内部で業務を実行するプログラムを作成することであり、入れ物(サーバー)の作成は含まれないと認識すればいいでしょう。

webシステムとwebアプリの違いは仕組み全体を指すか、一部を指すか

システムとアプリの関係を話したので、次は、WebシステムとWebアプリについて説明していきます。

まず、このシステムとアプリの前についているWebとは何でしょうか。Webはインターネットを使用して文書で表現された文章、画像、映像、音楽などを発信したり、見たりする仕組みのことです。インターネットは通信回線を使って、世界中のコンピュータを繋いで情報をやり取りする技術全般を指すので、Webはインターネット技術の一部ということになります。

このWebの仕組みを使用しているのがWebシステムとWebアプリです。

Webシステムはブラウザから操作してネット上で処理する仕組み全体

Webシステムは、システム開発の図で示したようなサーバーが遠隔地にあります。Webブラウザを開き、インターネットを経由してそのサーバー上のアプリを使用することができます。

Webシステムの例として、商品を販売するサイト(ECサイト)があります。いま、あなたが読んでいる画面はWebサイトというものですが、これはテキストや画像の情報だけをあなたのパソコンやスマホに表示します。一方でECサイトの場合、情報を表示するだけでなく、様々な機能があります。

ECサイトは、まず最初にユーザー登録をします。そして、商品を探す際には条件を入力したり、商品のカテゴリを選択したりすることで表示する商品を絞り込むことができます。欲しい商品を選んで決済方法と注文を確定したら、注文完了のメールが届きます。このように、ECサイトはただ単に文章や画像を表示する以外の機能を使って運営されています。

これらのユーザー登録や商品注文の機能はWebブラウザ上で全ての操作ができます。Webブラウザを開いているパソコンやスマホに何かをダウンロードしないと利用できないということはありません。

これらの機能はどこか別の場所にあるコンピュータ上に作られています。私たちは、Webブラウザからインターネットを経由して、その機能を使うことができます。

つまり、使用しているパソコンやスマホが、インターネットに接続でき、Webブラウザを開くことさえ出来れば利用できるのです。これがシステム開発で説明したシステムとWebシステムとの違いになります。

Webシステムの全体像について、ランキング表示をした場合を例に説明します。ECサイトで売れ筋ランキングを表示するページを開いた際、以下の図のようなことが起こっています。

図3.Webシステムの例

Webサーバーはブラウザから、「どのページを表示したい」という要求を受けます。Webサーバーは要求されたページを表示するためにランキング作成機能を実行する必要があると判断して、アプリケーションサーバーにその実行命令を送信します。

アプリケーションサーバーはランキング作成機能を実行します。ランキング作成機能は、ランキングを作成するために必要な各商品の注文数をデータベースサーバーから取得します。そして、取得した注文数からランキングを作成したらWebサーバーに送信します。

ランキング情報を受け取ったWebサーバーはそれをWebブラウザで表示できる形式にしてからWebブラウザに送信します。その情報を受け取ったWebブラウザがランキングを表示します。

このように、ユーザーがWebブラウザ上で必要な操作をすることで、インターネット経由で遠隔地にあるサーバーが表示するための機能を実行する仕組み全体がWebシステムになります。

Webアプリはネット上で処理を実行するプログラム

それに対してWebアプリとは、Webシステムの説明で出てきた「アプリケーションサーバーにある売れ筋ランキング作成を実行するプログラム」のことです。

アプリ開発の部分で説明したアプリと役割は同じです。違う点はWebブラウザで表示するために追加で処理が必要になる点です。

追加の処理とは、作成したランキングを画面のどこに配置するか、またどのようなデザインで表示するかなどの設定をすることです。

このような追加の処理も作成する必要があるため、Webアプリは普通のアプリよりも作成するのが難しくなります。

Webシステム/Webアプリの具体例

それではWebシステムやWebアプリの開発事例としては何があるのでしょうか。以下のものがあります。

【Webアプリの具体例】

  • Youtube
  • Skype
  • Twitter
  • Gmail

【Webシステムの具体例】

  • ECサイトシステム
  • 在庫管理システム
  • 求人求職情報登録・検索システム
  • 業務管理システム

具体例にあるように、Webアプリは「動画を共有したい」「電話会議したい」という、ユーザーの要望に合わせて機能を特化しているものが多いです。

一方、Webシステムは商品の販売や在庫の管理など、既存の業務についてWebブラウザでどこからでも実行できるようにしたものが多いです。

実際は、WebシステムとWebアプリは同じ意味で使われている

ここまでWebシステムとWebアプリの違いを説明してきましたが、実際はこの2つはシステム開発会社の間では明確に区別されずに同じ意味で使われがちです。

システム開発会社の開発事例を見てみると、同じような開発案件でも、ある会社ではWebシステムと紹介され、別の会社ではWebアプリと紹介されているという場合があります。WebシステムとWebアプリを区別するための、明確に共有された業界共通の定義はないようです。

定義があいまいになっている理由として、パソコンやスマホ上で実行するアプリ開発では、プログラムを作成するだけで開発できます。それに対して、Webアプリではアプリを実行するサーバーなどの仕組みの開発もしなければならない場合が多いため、Webシステムとの違いがなくなっているということが考えられます。

このような状態のため、WebシステムとWebアプリという言葉を見たとき、その言葉のみで仕組み全体かプログラムのみかを判断しようとすると、間違って認識することになるかもしれません。

言葉だけで認識するのは、Webの技術を中心に作成されたもので、Webブラウザでアクセスして使用するもの、という程度にしておきましょう。それ以上の細かい判断は詳しく説明を見てからにすれば良いです。

まとめ

システム開発は業務を効率的に実行するためのコンピュータを使った仕組み全体を開発するものであり、アプリ開発はその仕組みの中で処理を実行するプログラムを開発するものと説明しました。

その説明に基づくとWebシステムは、Webブラウザで遠隔地にあるサーバー上の様々な機能を使用するための仕組み全体を指します。また、WebアプリはWebシステムの中の機能の部分を指すことになります。

ただ、実際は多くのシステム開発会社の間で、WebシステムとWebアプリを明確に区別する業界共通の定義がないので、両者の言葉は同じような意味で使用されているのが現状です。

そのため、Webブラウザでアクセスして遠隔地にある機能を使用するものという共有点を押さえて、残りの細かい解釈の違いは各会社で異なる場合があると認識しておきましょう。

コメント

タイトルとURLをコピーしました