プログラム:コンピューティング、放送、教育、公共政策における定義
プログラムとは、意図した成果を達成するために計画された命令、活動、または予定された内容の集合である。コンピューティング、放送、教育、公共政策で用いられ、それぞれ構造、ライフサイクル、目的が異なる。
概要
プログラムとは、意図した成果を達成するために編成された、命令、活動、または項目の集合である。この語は多くの分野で、関連しつつも異なる意味で用いられる。コンピューティングでは機械が実行する命令を指し、放送では予定された番組や区分を指す。教育では学習課程を、公共政策では社会的目標に向けた施策またはサービスの連携した一式を指す。
分野別の定義
- コンピューティング:コンピュータがタスクを実行するために実行できる、1つ以上のプログラミング言語で記述された符号化命令の列である。プログラムは、小規模なスクリプトやコマンドラインツールの場合もあれば、大規模なアプリケーションやオペレーティングシステムの場合もある。
- 放送およびイベント:ラジオ、テレビ、演劇、会議のために、順序、時間、クレジットを含めて計画されたコンテンツの構成である。
- 教育および訓練:学習目標または資格の取得につながる、組織化されたカリキュラムまたは科目群である。
- 公共政策およびサービス:多くの場合、測定可能な目標と評価を伴い、社会的なニーズに対処するために設計された、活動、資源、規則の連携した一式である。
構造と構成要素
分野による違いはあるものの、プログラムには共通の要素がある。すなわち、目標または仕様、手順または予定、入力と出力、ならびに監視または制御の仕組みである。ソフトウェアでは、典型的な構成要素にソースコード、ライブラリ、設定、ユーザーインターフェース、データが含まれる。政策または教育では、目標、対象集団、資源、期間、評価方法が構成要素となる。
作成とライフサイクル
プログラムの開発は、計画および仕様策定、設計、実装、テストまたは試行、展開、保守または評価といった段階を経る。コンピューティングでは、これらの段階は要件分析、コーディング、デバッグ、リリース、継続的な更新に対応する。公共プログラムでは、有効性と説明責任を確保するため、評価と適応が不可欠である。
種類と区別
- 規模による分類:スクリプトやユーティリティは一般に小規模であり、アプリケーションやシステムはより大規模かつ複雑である。
- 実行方式による分類:コンパイル型プログラムは実行前に機械語へ変換される一方、インタープリタ型プログラムは実行時にインタープリタによって実行される。
- 関連概念:アルゴリズムは段階的な手法であり、プログラムは1つ以上のアルゴリズムを実装したものである。プロセスとは、実行中のプログラムである。
配布、ライセンス、保守
プログラムは、ソースコード、実行可能なバイナリ、パッケージ化されたインストール形式、オンラインサービスなど、さまざまな形態で配布される。法的・実務的な考慮事項には、ライセンス、知的財産、互換性、セキュリティ、更新およびサポートの必要性が含まれる。適切に保守されたプログラムには、信頼性と安全性を確保するための文書化、バージョン管理、テストの実践が備わっている。
著者
AlegsaOnline.com プログラム:コンピューティング、放送、教育、公共政策における定義 Leandro Alegsa
URL: https://ja.alegsaonline.com/art/79372