VNEXTの会社紹介資料
2024/03/12
システム開発はひとくくりにされがちですが、実は、オープン系・Web系・汎用系など数種類に分かれています。
それぞれ求められる知識やスキルが違うため、エンジニアを採用したい方や開発会社に業務委託したい方は、それぞれの特徴や違いについて理解しなければなりません。
本記事では、システム開発の主な3種類として挙げられる「オープン系システム」「Web系システム」「汎用系システム」それぞれの違いや特徴について解説します。
目次
● システム開発とは● システム開発の種類は主に3つ● オープン系システム● Web系システム● 汎用系システム● システム開発とソフトウェア/アプリ開発の関係● オープン系・Web系・汎用系の将来性● まとめ |
|システム開発とは
システム開発とは、IT技術を活用して業務の効率化を図る「仕組み」を作ることです。
現在では、システム開発にパソコンやソフトウェアは必須です。そのため、IT技術を駆使して業務効率化に資するシステムやツールを開発することを指して「システム開発」とすることが一般的です。たとえば、企業の財務会計、販売管理、在庫管理などの業務を一括管理するために、ツールを作成するのはシステム開発の例にあたります。
システム開発を行うのは、システムエンジニア(SE)とプログラマーに分かれます。SEは、システム全体の設計図を書く役割です。一方で、プログラマーは設計図をもとにコードを書き、システムを実際に構築していきます。
|システム開発の工程
システム開発の一般的な工程は、下記の流れになります。
- 要件定義・・・システムに搭載したい機能をまとめる
- 基本設計(外部設計)・・・システムの外的要素を決める
- 詳細設計(内部設計)・・・基本設計で定義されたシステムの詳細な実装方法(プログラミング方法)を計画する
- 開発(プログラミング)・・・設計内容を実装する
- 単体テスト・・・プログラムのパーツごとに動作確認を行なう
- 結合テスト・・・全体の動作を検証する
- 最終テスト・・・実務環境でのテストを行う
- リリース・・・実際に利用を開始する
- 運用・保守・・・システムを安定稼働させるために管理する
各工程の詳細については下記の記事で詳しく解説していますので、あわせてご覧ください。
▶︎ ある日突然システム開発担当に!システム開発の流れをおさらい
|システム開発の種類は主に3つ
進化・多様化するIT技術の相互応用が進んだことにより、システム開発の種類は切り分けが困難になりつつあるのが現状です。人によって定義は曖昧になりがちなものの、一般的なITシステム開発の場合、主な種類は以下の3つです。
・オープン系システム
・Web系システム
・汎用系システム
ほかにも、システム開発の種類としては「組み込み系」「制御系」などが挙げられますが、これらは家電・産業用ロボットなどの「機械・モノ」に組み込む・制御することが前提です。本記事では「オープン系」「Web系」「汎用系」に絞って解説していきます。
下記表は、オープン系、Web系、汎用系システムの特徴を簡単にまとめたものです。
このように、それぞれ違いや特徴がありますが、これらの開発形態は目的とするシステムによって、ある程度決まってきます。
たとえば、Webを使ったサービスを提供したいならば、Web系を選ぶことになるでしょう。
ひと昔前に注目されていた汎用系やオープン系も、使われる場はあります。企業の基幹システムや金融機関のシステムでは汎用系が多く使われています。
また、業務効率化ツールのなかには、必ずしもWebの接続を必須としないものもあります。このようなシステム開発には、オープン系が使われることが多いです。
それでは、それぞれのシステムについて詳しくみていきましょう。
|オープン系システム
オープン系システムとは、技術仕様やソースコードが公開(オープン)されているソフトウェア・ハードウェアを利用して開発されたシステムのことです。
オープン系は複数人でのシステム共有を前提としており、一般に入手できるPC/サーバでネットワークを構築し、開発したプログラムをそれぞれにインストールして活用します。
クライアントPC/サーバ用に、それぞれプログラムを開発する必要のあるオープン系は、主に基幹系の業務システム開発で採用されます。具体例としては以下のとおりです。
・人事給与システム
・財務会計システム
・販売管理システム
・在庫管理システム
・生産管理システム
また、オープン系システムは幅広いユーザーを想定しているWeb系とは異なり、企業ごとの専門性を高め、オーダーメイドのシステム開発を行います。
|オープン系システムの特徴
オープン系システムの特徴は、主に下記の3つが挙げられます。
・一般に入手しやすいソフトウェア/ハードウェアを利用
・多彩なプログラミング言語/技術を選択可能
・組織内での共有を前提としたクライアントサーバシステム
こうした特徴を持つオープン系システム開発は「用途に合わせた分散共有システムを柔軟かつ汎用系より低コストで開発」するのに適しています。
対応できるシステム開発会社も多く、要求がクリティカルかつ多様な業務システム開発でオープン系が採用される理由だといえるでしょう。
|オープン系システムの技術・開発言語
オープン系システム開発で利用されることの多いソフトウェア・開発言語は以下のとおりです。
ソフトウェアの種類 | 具体例 |
サーバOS | UNIX、Linux、Windows など |
ミドルウェア | Apache HTTP Server、WebLogic など |
データベース | SQL Server、MySQL、PostgreSQL、Oracle など |
開発言語 | Java、C#、C++、VB.NET、PHP、Ruby、Python など |
オープン系システム開発では、無償もしくは安価なソフトウェアと、macOS / Windows PC / サーバ / ネットワーク機器などの一般に入手しやすいハードウェアを組み合わせて利用します。開発するシステムに応じて多彩なプログラミング言語を選べるのもオープン系の技術的な特徴です。
オープン系では、あらかじめ用意したサーバ環境にアプリケーションを構築する場合が一般的です。スクラッチでシステム開発する際でも、サーバ環境には既存のソフトウェアが活用されます。
|Web系システム
Web系システムとは、インターネットで利用することを前提に、Web技術を活用して開発されるシステムのことです。
具体的には、PC/モバイルデバイスにインストールされたWebブラウザを使い、インターネット経由で利用するアプリケーション/サービスがWeb系システムです。
クライアント(PC /モバイルデバイス)側に、特別なアプリケーションをインストールする必要がないWeb系システムは、不特定多数のユーザーを対象にすることが基本です。
普段私たちが、Webブラウザを使ってインターネット経由で利用するWebアプリ/WebサービスがWeb系システムです。具体例としては以下のとおりです。
・Yahoo! Japanなどのポータルサイト
・Amazon/楽天などのECサイト
・X(旧Twitter)/InstagramなどのSNS
・Gmailなどのメーラー
・YouTubeなどの動画共有サイト
・食べログなどの口コミサイト
クラウド環境に構築された勤怠管理システム、経費精算システムなどのアプリケーションをインターネット経由で利用するクラウド型サービス(SaaS)も該当します。
|Web系システムの特徴
Web系システムの特徴は、主に下記の4つが挙げられます。
・クライアントにはWebブラウザを利用
・一般に入手しやすいソフトウェアを利用
・サーバはクラウド/ホスティングサービスなどにデプロイ
・HTML / CSS / JavaScriptで開発したフロントエンドはサーバに実装する
LAMP(Linux、Apache、MySQL、Perl / PHP / Python)に代表される技術の標準化、大規模Webアプリにも対応する柔軟性・コストパフォーマンスの高さがWeb系システム開発の特徴といえるでしょう。
また、運用・メンテナンス・アップデートも容易です。SaaS型に代表されるように、近年では業務システムにWeb系が採用されることも多くなっています。ただし、Webブラウザの機能制限を受けやすいことには注意しましょう。
|Web系システムの技術・開発言語
Web系システム開発で利用されることの多いソフトウェア・開発言語は以下のとおりです。
Web系の主要技術 | 具体例 |
サーバOS | UNIX、Linux、Windows など |
ミドルウェア | Apache HTTP Server、WebLogic など |
データベース | SQL Server、MySQL、PostgreSQL、Oracle など |
開発言語 | Java、PHP、Ruby、Python、HTML、CSS、JavaScript など |
ハードウェア | パブリッククラウド、ホスティングサービス など |
Web系システムは、サーバに構築されたアプリケーションをネットワーク経由で利用するというオープン系システムとの共通点がある一方、クライアントアプリがWebブラウザだという相違点があります。
クラウド/ホスティングにデプロイ(展開)されるHTML / CSS / JavaScriptでフロントエンドを開発することもWeb系の技術的な特徴です。
|汎用系システム
汎用系システムとは、メインフレーム/ホストコンピューターとも呼ばれる大型高性能コンピューター(汎用機)を利用して開発されるシステムのことです。
メインフレームとは、数十億件の計算や商取引をリアルタイムで処理する高性能なサーバです。大容量のメモリーと高性能なCPUを搭載しており、企業の基幹業務システムなどに用いられています。
IBM / NEC / 富士通 / 日立などが独自に開発するメインフレームに、ネットワーク経由で端末を接続し、CUI(コマンドラインユーザーインターフェース)で日常的な操作をするのが基本です。システム処理のほとんどをメインフレームに依存することが大きな違いで、必然的に、個々のメインフレームに特化した「クローズドな」開発が必要です。
かつては、特定の用途ごとに専用のコンピューターが必要とされていましたが、メインフレームが登場したことによって、1台のコンピューターにすべての計算処理を任せられるようになりました。メインフレームを汎用機と呼ぶようになったのは、専用機に対する反語だからであり、それが転じてメインフレームを利用したシステムを汎用系と呼ぶようになりました。
建物の一室やワンフロアを占めるほどの大きさになる汎用機は、堅牢で障害性に優れるうえ、大量のトランザクションの並列処理が可能です。その分、非常に高価であり、大企業や官公庁など、エラーの許されないクリティカルなシステムで汎用系システムが採用されることがほとんどです。具体例としては以下のとおりです。
・大企業や官公庁の基幹システム
・金融/証券会社の勘定系システム
・自治体の住基システムや税務システム
・交通機関の座席予約システム
・航空路管制システム
|汎用系システムの特徴
汎用系システムの特徴は、主に下記の3つが挙げられます。
・メーカー独自仕様のメインフレーム(汎用機)を利用
・大量のトランザクションを高速に並列処理できる
・機械語に近い高級言語でフルスクラッチ開発される
堅牢で高い信頼性を確保できるのが汎用系システム開発の特徴ですが、メインフレームを含む開発コストが非常に高価であり、開発期間も長期に渡ります。
|汎用系システムの技術・開発言語
汎用系システム開発で利用されることの多いソフトウェア・開発言語は以下のとおりです。
汎用系の主要技術 | 具体例 |
開発言語 | COBOL、FORTRAN、PL/SQL、Java、C など |
ハードウェア | IBM、NECなどの汎用機(メインフレーム、ホストコンピューター) |
メーカー独自のメインフレームを活用する汎用系システムでは、OSも独自システムが採用されるため、プログラム開発はより機械語に近い高級言語が使われ、要件に合わせたフルスクラッチ開発が基本となります。
ほとんどの汎用系業務システムは「COBOL」で開発されています。汎用系は一般的なクライアントサーバシステムへのリプレイスが困難であるため、運用・保守で今後もCOBOLが活用されていくと見られますが、新規開発案件はほとんどないといえるでしょう。
|システム開発とソフトウェア/アプリ開発の関係
「オープン系」「Web系」「汎用系」それぞれに向いているシステムに違いはあるものの、アプリケーションを開発する意味では同じです。
そもそもシステム開発とアプリ開発、ソフト開発はなにが違うのかと感じる方も少なくないかもしれません。
コンピューターは、ハードウェアに処理を命令するプログラムがなければ動作しません。このプログラムの総称が「ソフトウェア」であり、ソフトウェアのなかでも特にOSの機能を応用して活用するプログラムが「アプリケーション」です。
これに対し、ある目的を達成するための仕組み全体が「システム」であり、ITシステムの場合はソフトウェア/ハードウェアすべてが含まれます。
|オープン系・Web系・汎用系の将来性
それぞれに特徴や向いているシステムの異なる「オープン系」「Web系」「汎用系」ですが、IT技術は日進月歩で進化しています。今後それぞれがどのように変化していくのか、近い将来について考えられることを簡単に紹介していきます。
|オープン系開発の将来性
オープン系の開発は、今後とも一定の案件数が見込まれます。以下に該当するオープン系開発案件のニーズはまだまだ高いからです。
・Webにつながなくても、社内にサーバーを置けばLANだけで業務を完結できる
・セキュリティに十分注意を払わなければならない情報を扱っている
・限られたメンバーだけが情報にアクセスできれば十分
企業で利用する人事・給与システムや経理システムは、オープン系開発の代表例といえるでしょう。
現代はWeb系のシステムに注目しがちですが、オープン系にも一定の需要があります。今後は汎用機の需要を代替する動きが見込まれることも、追い風となるでしょう。
|Web系開発の将来性
Web系の開発は、今後とも高い需要が見込まれます。それは以下のとおり、ユーザーのニーズに沿うサービスを提供できることが理由として挙げられます。
・手元で操作できる利便性(帰社しなくてもスマートフォンやノートパソコンで報告できる、など)
・テレワークに対応可能
・Webブラウザさえあれば、世界中どこからでもアクセス可能
また、クラウドの活用により、IT資産を持たずにサービスを提供できることは大きなメリットに挙げられます。
Webサービスやクラウドは、ますます求められるサービスとなっていくでしょう。これらの業務や開発に携わるエンジニアも多く求められるため、将来性は高いといえます。
|汎用系開発の将来性
汎用系開発の将来性は、それほど明るくありません。オープン化やWebの流れに加えて、クラウドも普及しています。
また、汎用系エンジニアの数も減り、高齢化が進んでいることも見逃せません。
先般、富士通は2030年度にメインフレームの製造・販売から撤退する(※1)ことを発表しましたが、これは汎用機の衰退を象徴したものといえます。
これまで汎用系で開発していた企業も、他の開発形態への移行をするケースが見られるようになりました。たとえば北國銀行では、パブリッククラウドで動作するフルバンキングシステムを稼働させています(※2)。
もっとも短期的に見れば、汎用系開発の見通しに明るい部分もあります。
人手不足が顕著な分野ですから、新しく参入する人のハードルが下がりやすいことはメリットといえます。
※1)参考:日経BP「富士通がメインフレーム製造・販売から2030年度に完全撤退へ、66年の歴史に幕」
※2)参考:北國銀行「国内初、パブリッククラウドでのフルバンキングシステムが北國銀行で稼働開始」
|まとめ
近い将来も含め、現在のシステム開発の主流は「オープン系」「Web系」ですが、両者には共通する点も少なくなく、業務システムにWeb系が採用されるなど、その境界は曖昧になりつつあります。
単純なシステム開発の種類にこだわるのではなく、IT技術の動向・トレンドを見極めながら、柔軟な発想でベストな開発手法を選択するのがおすすめです。
システム開発の種類を含め、自社に最適な提案をしてくれるシステム開発会社を探している方は、ぜひ弊社VNEXTにご相談ください!
お客様の要件や目的、予算などをヒアリングした上で、貴社に最適なシステム開発をご提案します。