ソフトウェアの種類は,基本情報技術者試験をはじめとする情報処理技術者試験で頻出となる重要分野です。基本ソフトウェア(OS),ミドルウェア,応用ソフトウェアの違いや役割を整理できていますか?
基本ソフトウェア(OS)=ハードウェアを管理し,共通機能を提供
ミドルウェア=OSと応用ソフトウェアの橋渡し
応用ソフトウェア=利用目的に応じた処理を実現
コンピューターは,これらのソフトウェアが階層的に連携することで動作しています。それぞれが独立しているわけではなく,「どの位置でどの役割を担うのか」という関係性を理解することが重要です。
このページでは,ソフトウェアの全体像を図や表で整理し,「それぞれの違いと役割」が一目で分かるようにシンプルに解説します。
初学者の方や,基礎を体系的に復習したい方に向けたまとめページです。
ソフトウェアとは
プログラムとは,コンピューターを動作させるためにハードウェアを有効活用し,効率よく動作させるための命令の集まりをいいます。
ソフトウェアとは,このプログラムを組み合わせて目的の処理を行うようにまとめたものをいいます。プログラムの動作に必要なデータも含みます。
ソフトウェアの分類
※ 応用ソフトウェアは,アプリケーションソフトウェアということもある
基本ソフトウェア(OS:Operating System)の役割と特徴
基本ソフトウェアは,ハードウェアと利用者(または,応用ソフトウェア)の間に位置するコンピューターシステムの核となるソフトウェアです(広義のOS)。
ハードウェアは,それぞれ異なるインタフェースを持ちますが,基本ソフトウェアが,その違いを吸収し,応用ソフトウェアなどに対して共通の機能を提供します。
※ 基本ソフトウェアについては,「基本ソフトウェア(OS)の基礎まとめ」を参照
ミドルウェアの役割と例
ミドルウェアは,基本ソフトウェアと応用ソフトウェアの間に位置するソフトウェアです。さまざまな応用ソフトウェアが共通して利用する基本的な処理機能を提供します。代表的なミドルウェアは,次のとおりです。
| DBMS | データベースを管理し,応用ソフトウェアなどからの要求に応えるソフトウェア |
※ DBMS(DataBase Management System)… データベース管理システム
応用ソフトウェア(アプリケーションソフトウェア)の種類と例
応用ソフトウェアとは,ある特定の利用目的のために開発されたソフトウェアのことをいいます。多くの人が利用するソフトウェアは,パッケージ化されていたりします。代表的な応用ソフトウェアは,次のとおりです。
- ワープロソフト
- 表計算ソフト
- 画像閲覧・編集ソフト
- 動画・音楽再生ソフト
- ゲーム
- Webブラウザ
- 電子メールソフト
- セキュリティ管理ソフト
- CAD/CAM
- 各種業務固有のアプリケーション など
ソフトウェアに関連するしくみ
API(Application Programming Interface)とは
APIとは,応用ソフトウェアなどが,OSや他のソフトウェアが提供する機能を利用するためのしくみのことをいいます。開発者は,このAPIを利用してソフトウェアを開発することができます。
SDK(Software Development Kit)とは
SDKとは,ソフトウェアを開発するために必要なツールやプログラムをまとめた開発用キットのことをいいます。開発者はSDKを利用することで,必要な機能を一から作成する手間を省き,効率よくソフトウェアを開発することができます。SDKには,主に次のようなものが含まれます。
| ライブラリ | よく使われる処理をまとめたプログラムの部品 |
| API | ソフトウェアの機能を利用するためのしくみ |
| 開発ツール | プログラムの作成やデバッグを支援するツール |
| サンプルプログラム | SDKの使い方を示した例 |
| マニュアル・ドキュメント | 開発方法を説明した資料 |
マクロとは
マクロとは,複数の操作や命令をあらかじめ登録しておき,1回の操作でまとめて実行する機能のことをいいます。
※ 定型的な作業を自動化できるため,ヒューマンエラーの防止や作業時間の短縮につながる
自然言語とは
自然言語とは,人間が日常生活で使用している言葉のことをいいます。
※ 自然言語処理…コンピュータが自然言語を理解・解析・処理する技術
まとめ
今回は,ソフトウェアの種類について,基本ソフトウェア(OS),ミドルウェア,応用ソフトウェアの役割と関係をシンプルにまとめてみました。ソフトウェアは階層構造で成り立っており,それぞれが連携することでコンピューターは効率よく動作します。特にミドルウェアは,応用ソフトウェアとOSの橋渡しを担う重要な存在であり,試験でもよく問われるポイントです。各ソフトウェアの位置づけと役割をセットで理解しておきましょう。
理解が進んだら,基本情報技術者試験の過去問題等にもチャレンジしてみてください。
※ このページでは読みやすさを考慮し「コンピューター」,「サーバー」など長音付きで表記していますが,試験では「コンピュータ」,「サーバ」と表記されます
基本情報技術者試験の学習におすすめの参考書
基本情報技術者試験の合格を目指す方におすすめの参考書です。
学習のお役に立ちましたら
この記事が少しでも学習のお役に立ちましたら,今後も分かりやすい解説や学習コンテンツを継続してお届けする励みになります。
よろしければ、このサイトを応援いただけますと嬉しいです。
※OFUSEは,クリエイターやコンテンツ制作を直接支援できるサービスです。

