ソフトウェア(英語表記:Software)とは 

ソフトウェアは、コンピュータや組込デバイス上で動作するプログラムやデータの集合体のことを表します。ソフトウェアは、ユーザーがコンピュータやデバイスを使用する際に必要な機能を提供したり、タスクを実行したりするために使用するものです。 

1.概要 

コンピュータを構成する電子回路や装置などの物理的な実体を「ハードウェア」(hardware)と呼ぶのに対し、それ自体は形(実態)を持たないプログラムや付随するデータなどをソフトウェアと言います。物理的には記憶装置(ストレージやメモリなど)の記録媒体における電気的あるいは磁気的・光学的媒体の信号として存在します。 

ソフトウェアはその役割により、ハードウェアの制御や他のソフトウェアへの機能の提供、利用者への基本的な操作手段の提供などを行なう「オペレーティングシステム」(OS:Operating System/基本ソフト)と、特定の個別的な機能や目的のために作られた「アプリケーションソフト」(application software/応用ソフト)に大別されます。 

これらに加えてハードウェアに組み込まれ基本的な制御を行う「ファームウェア」(firmware)や、OSとアプリケーションソフトの中間で特定分野の基本機能や共通機能を提供する「ミドルウェア」(middleware)などの分類が用いられることもあります。 

(*)ファームウェア(英語表記: firmware):電子機器に組み込まれたコンピュータシステム(ハードウェア)等を制御するためのソフトウェアの事で、ソフトウェアをROM等の集積回路にあらかじめ書き込まれた状態で、機器に組み込んだもの。またソフトウェアではなく、プログラマブルロジックデバイスで利用する回路情報も広い意味でファームウェアと呼ぶこともあります。 

ファームウェアとは、家電製品・パソコン・周辺機器・携帯電話などのように、コンピュータシステムを組み込んだ電子機器本体(組み込みシステム)に希望の動作をさせるためのソフトウェアの事であり、ハードウェアに密接に結びついていて、容易に書き換えることのない(出来ない)媒体に書き込まれた物を言います。一般的なソフトウェアよりハードウェア寄りのソフトウェアということで、ファーム(堅い、固定した)という呼び方をしているそうです。 

(*)ミドルウェア(英語表記:Middleware):コンピュータの分野で、コンピュータの基本的な制御を行うオペレーティングシステム(OS)と、各業務処理を行うアプリケーションソフトウェアとの中間に入るソフトウェアのことです。 

通常はオペレーティングシステムの機能の拡張、あるいはアプリケーションソフトウェアの汎用的(共通的)な機能を集めたものでです。アプリケーションソフトウェアはミドルウェアに要求を出すと、ミドルウェアがオペレーティングシステムに必要な要求を出し、結果をアプリケーションソフトウェアに返す。あるいはミドルウェア自体が各アプリケーションソフトウェアの起動・停止・監視などを含めた制御を行います。

2.ソフトウェアの分類 

ソフトウェアは、システムソフトウェアとアプリケーションソフトウェアが主要なカテゴリに分類されます。 

2-1 システムソフトウェア(System Software): コンピュータのハードウェアを管理・制御するなど、コンピュータの稼動自体に必要となるソフトウェアの事です。 典型的なシステムソフトウェアとして、オペレーティングシステム (OS) があり、様々なソフトウェア処理のプロセスに対してCPUやメモリの割り当ての管理を行い、記憶装置にデータやファイルを正しく読み書きできるようにするなどのさまざまな処理を行っています。キーボードやマウスなどの入力機器からの信号をアプリケーションソフトウェアに通知などの処理を行い、アプリケーションソフトウェアの要求に応じて画面への図形や文字の表示を行う事も、オペレーティングシステムの機能です。 

パーソナルコンピュータをはじめとする、家庭用のコンピュータ機器では、これらのソフトウェアは購入時にコンピュータ本体に同梱あるいはプリインストールされていることが多いです。 

そのほか、オペレーティングシステムでは提供されない機能のうち、さまざまなアプリケーションソフトウェアで利用される一般性のある機能を提供するものを、ミドルウェアと言います。 

2-2 アプリケーションソフトウェア(Application Software): アプリケーションソフトウェアは、利用者の目的に応じた機能を提供するソフトウェアのことを言います。 

一般事務で利用されるワープロや表計算ソフトウェアを初めとして娯楽を目的としたゲームソフトや、工場の作業を自動化するファクトリーオートメーション、事務手続きや経営を管理するためのビジネスソフトウェア・ブラウザ・教育や医療などあらゆる目的に応じてソフトウェアが開発されています。ソフトウェアの開発自体に使われるプログラミングツールもあります。 

これらのアプリケーションソフトウェアは、既製品をパッケージソフトウェアなどのかたちで購入するほか、利用者自身が目的を果たすソフトウェアを開発する場合もあります。 大規模なものでは銀行の預貯金口座を管理する勘定系システムやJRの「みどりの窓口」で使われるマルスなどのオンラインシステムを始め、販売や営業、生産などの各種業務管理システムなどの個別開発のソフト群(各企業内でのコンピュータシステム(情報システム)の一部を形成しています)から、小さいものは表計算ソフトのテンプレート・ワープロソフトのマクロ・科学技術シミュレーション・グラフィックスやアニメーションのためのスクリプトなどが含まれます。電子メールフィルタなども一種のユーザー作成ソフトウェアです。 

ユーザーは自身の作成したこれらのソフトウェアの重要性に気づいていないことが多く。ユーザー作成ソフトウェアが購入されたアプリケーションソフトウェアとうまく統合されていると、多くのユーザーはその区別がしづらいです。 

(*)マルス(英語表記:MARS : Multi Access seat Reservation System):JRの指定席券を主として、乗車券類・企画券などの座席管理・発行処理および発行管理(精算業務)を行う巨大なオンラインシステムです、ホストシステム、端末ともに「マルス(端末)」と呼ばれています。 

2-3Webアプリケーション(英語表記:Web application):  

ウェブ(World Wide Web)技術を基盤としたアプリケーションソフトウェアです。 

代表的なウェブアプリケーションは、WebブラウザがHTTPを利用してHTMLを取得・表示しDOMを介してJavaScriptが操作して、必要に応じてWebサーバと通信をおこなってデータを更新します。 

このようにウェブ(World Wide Web)を基盤として作られる応用ソフトウェアをウェブアプリケーション(Webアプリ)と総称しています。この説明はあくまでウェブアプリケーションを実現する技術スタックの一例です、他の様々な技術を用いてWebアプリの作成が出来ます。 またウェブアプリケーションの明確な定義は存在していません。 

ウェブアプリケーションに対して、ローカルのデスクトップ環境上で動作するアプリケーションは、デスクトップアプリケーションやスタンドアロンアプリケーション、スマートフォンで動作するアプリケーションはネイティブアプリと呼ばれています。 

(*)DOM:(英語表記:Document Object Model):直訳すると「ドキュメントを物として扱うモデル」となります。 

HTML文書やXML文書(あるいはより単純なマークアップされた文章など)をオブジェクトの木構造モデルで表現することで、ドキュメントをプログラムから操作・利用することを可能にする仕組みのことです。Documentの種類・操作に用いるプログラミング言語の種類に依存しない仕様になっています。 

モーションコントロール、ODM開発のご相談は東阪電子機器へ

大切にしているのは、お客様とのコミュニケーション。
22業界・1,700機種の開発実績を有する弊社の専門スタッフが、
お客様のお困りごとに直接対応させていただきます。