ソフトウェア製品は以下を対象としています。 功利主義的なプログラム

28.07.2023

すべてのプログラムは、使用の性質とユーザーのカテゴリーに応じて、実用的なプログラムとソフトウェア製品(製品)の 2 つのクラスに分類できます (図 8.4)。

米。 8.4.ユーザーカテゴリーによるプログラムの分類

功利主義的なプログラム(「自分用のソフトウェア」) は、開発者のニーズを満たすように設計されています。 ほとんどの場合、実用的なプログラムは、データ処理テクノロジにおけるサービスの役割を実行するか、広範な配布を目的としていない機能的な問題を解決するためのプログラムです。

ソフトウェア製品(製品は)ユーザーのニーズを満たすように設計され、広く配布され、販売されます。

現在、グローバルまたは地域の電気通信を使用して登場したソフトウェア製品を合法的に配布するには、次のような他のオプションもあります。

§ フリーウェア - 自由に配布され、必要な変更を加える権限を与えられたユーザー自身によってサポートされる無料プログラム。

§ シェアウェア – 原則として無料で使用できる非営利 (シェアウェア) プログラム。 このような製品を定期的に使用するには、一定の金額の支払いが必要です。

多くのメーカーが使用している OEM プログラム(相手先商標製品製造業者)、つまり コンピュータにインストールされるか、コンピュータ機器に付属する組み込みプログラム。

ソフトウェア製品は、動作のために適切に準備され、必要な技術文書があり、サービスを提供し、プログラムの信頼性の高い動作を保証し、メーカーの商標があり、できれば州の登録コードが必要です。 このような条件下でのみ、作成されたソフトウェア複合体をソフトウェア製品と呼ぶことができます。

ソフトウェア– あらゆる種類の工業製品と同様に販売用に準備された、大量需要の特定の問題 (タスク) を解決するための相互に関連する一連のプログラム。

「自分用のプログラム」からソフトウェア製品までの道のりは非常に長く、プログラムの開発と運用のための技術的およびソフトウェア環境の変化と、独立した産業である情報ビジネスの出現と発展に関連しています。ソフトウェア開発会社の分業、さらなる専門化、ソフトウェアおよび情報サービス市場の形成が特徴です。

ソフトウェア製品は次のように作成できます。

§ 注文に応じた個別の開発。

§ ユーザー間で大量配布するための開発。

個別開発では、特定の顧客向けにデータ処理の内容を考慮したオリジナルのソフトウェア製品を開発会社が作成します。

大量配布向けに開発を行う場合、開発会社は一方では実行されるデータ処理機能の汎用性を確保し、他方では特定のアプリケーションの条件に合わせたソフトウェア製品の柔軟性とカスタマイズを確保する必要があります。 ソフトウェア製品の際立った特徴は、その体系的な性質、つまり機能の完全性と、一緒に使用される実装された処理機能の完全性である必要があります。

このソフトウェア製品は、最新のプログラミング ツールを使用して設計作業を実行するための産業技術に基づいて開発されています。 特異性は、情報処理の性質と使用されるツールに応じた、アルゴリズムとプログラムの開発プロセスの独自性にあります。 ソフトウェア製品の作成には、労働力、資材、財務など、多大なリソースが費やされます。 高度な資格を持つ開発者が必要です。

原則として、ソフトウェア製品にはサポートが必要です。サポートは専門会社、つまりソフトウェア販売会社(ディストリビュータ)によって行われますが、開発会社によって行われることはあまりありません。 大量に使用するプログラムを維持するには、検出されたエラーを修正したり、プログラムの新しいバージョンを作成したりするなど、多大な労力がかかります。

ソフトウェア製品のサポート– ソフトウェア製品の機能の維持、新しいバージョンへの移行、変更、検出されたエラーの修正など。

従来のソフトウェア製品とは異なり、ソフトウェア製品には、プログラム作成時に指定される一連の厳密に規制された品質特性がありません。あるいは、ソフトウェアによって提供される同じ処理機能でも精緻さが異なる場合があるため、これらの特性を正確に指定したり、事前に評価したりすることができません。 。 ソフトウェア製品の開発にかかる時間とコストですら、事前に高い精度で決定することはできません。

プログラムの主な特徴は次のとおりです。

§ アルゴリズムの複雑さ (情報処理アルゴリズムのロジック)。

§ 実装された処理機能の構成と詳細度。

§ 処理機能の完全性と一貫性。

§ プログラム ファイルの量。

§ オペレーティング システムおよびソフトウェア側の処理の技術的手段の要件。

§ ディスクメモリボリューム。

§ プログラムを実行するための RAM のサイズ。

§ プロセッサの種類。

§ オペレーティング システムのバージョン。

§ コンピュータネットワークの利用可能性など

ソフトウェア製品は多岐にわたります 品質指標、これは次の側面を反映しています。

§ ソフトウェア製品がどの程度うまく (シンプル、信頼性、効果的) に使用できるか。

§ ソフトウェア製品の使いやすさ。

§ ソフトウェア製品の使用条件が変更された場合など、使用することはできますか?

ソフトウェア製品の品質特性のツリーを図に示します。 8.5。

米。 8.5。ソフトウェア製品の品質特性のツリー

可動性ソフトウェア製品とは、データ処理システム、動作環境、ネットワーク データ処理テクノロジ、対象領域の詳細などの技術的複雑さから独立していることを意味します。 モバイル (マルチプラットフォーム) ソフトウェア製品は、コンピュータ ネットワークでの動作に制限を受けることなく、さまざまなコンピュータ モデルやオペレーティング システムにインストールできます。 このようなソフトウェア製品の処理機能は、そのまま大量利用に適しています。

信頼性ソフトウェア製品の動作は、プログラムのスムーズさと安定性、所定の処理機能の実行の正確さ、プログラムの動作中に発生するエラーの診断能力によって決まります。

効率ソフトウェア製品は、その直接の目的であるユーザー要件の観点と、その動作に必要なコンピューティング リソースの消費という観点の両方から評価されます。

コンピューティング リソースの消費量は、プログラムを保存するための外部メモリの量とプログラムを実行するための RAM の量によって評価されます。

人的要因を考慮するこれは、エンド ユーザーにフレンドリーなインターフェイスを提供すること、ソフトウェアの一部として状況依存のヒントまたはトレーニング システムが存在すること、ソフトウェアに組み込まれた機能を習得および使用するための適切なドキュメント、エラーの分析と診断などを提供することを意味します。

変更可能性ソフトウェア製品とは、処理機能の拡張、別の技術処理ベースへの移行など、変更を加える能力を意味します。

コミュニケーションスキルソフトウェア製品は、他のプログラムとの可能な限りの統合に基づいており、共通の表示形式でのデータ交換(データベースのエクスポート/インポート、処理オブジェクトの実装またはリンクなど)を保証します。

ソフトウェア市場の存在に関して、重要な特徴は次のとおりです。

§ 価格;

§ 販売数;

§ 市場で費やした時間 (販売期間)。

§ 開発者とプログラムの名声。

§ 同様の目的でのソフトウェア製品の利用可能性。

大量配布されたソフトウェア製品は、需要と市場状況 (競合プログラムの入手可能性と価格) を考慮した価格で販売されます。 企業が実施するマーケティングは非常に重要であり、それには以下が含まれます。

§ 市場を征服するための価格政策の形成。

§ ソフトウェア製品を販売するための取引ネットワーク (いわゆるディーラーおよび配送センター) の創設。

§ ソフトウェア製品ユーザーにサポートと保証サービスを提供し、ホットラインを作成します (ソフトウェア製品の操作中に発生した質問に迅速に対応します)。

§ ソフトウェア製品のユーザーのトレーニング。

ソフトウェア製品の特有の特徴は、(ほとんどの工業製品とは異なり) その操作が法的根拠、つまりソフトウェア製品開発者の著作権に準拠した開発者とユーザー間のライセンス契約に基づいて実行されなければならないことです。

ソフトウェア製品 (SP) とは、人間の活動の結果、製品として大量消費者市場に出品され、ゼロではない使用価値を持つソフトウェアを意味します。

実稼働ソフトウェア製品とプロジェクト ソフトウェアを区別することは非常に重要です。 プリント基板は、さまざまな場所でさまざまなユーザーが使用できるように製造されています。 したがって、顧客はなく、予想される市場の需要に基づいて開発を開始する決定が下されます。 ワード プロセッサ、スプレッドシート、データベース管理システム、電子辞書、スペル修正プログラム、Russifier、翻訳機、光学式文字認識プログラム - これらはすべて、大量生産されたソフトウェアの例です。 世界中で何百万人もの人々がそれらを使用しています。

プロジェクト ソフトウェアは、1 人のユーザー (まれに複数のユーザー) のために作成されるか、ハードウェアとソフトウェアの複合体の不可欠な部分として使用するために別の組織に販売できるテクノロジの一部として開発されます。 たとえば、文字認識の問題に取り組んでいる ParaGraph International チームの一部は、この方向に取り組んでいます。 この会社は潜在的な顧客が十数社しかないにもかかわらず、この分野では大手です。

したがって、通常、プロジェクトに 1 人または数人のユーザーがいる場合、開発を継続するという問題はそれほど差し迫ったものではなく、開発を行う権利をめぐる競争が発生します。 逆に、シリアル化されたソフトウェア製品は数十万人の潜在ユーザーを対象としており、市場に登場すると、同じクラスの他の製品との競争が避けられません。 開発の開始を決定する場合、企業は重大な財務リスクを負います。 同時に、ソフトウェアのライフサイクルには改良が含まれるため、メーカーは、問題が 1 つのバージョンのリリースで終わるわけではないことを明確に認識する必要があります。

ソフトウェア製品のライフサイクル

ソフトウェアと他の多くの製品とのもう 1 つの重要な違いは、ソフトウェア製品の個別のコピーが低コストであることです。 メーカーに特有のこの特性により、ソフトウェアの最初の販売後にクライアントとの新しい形式の対話を導入することができます。 ここで言うアップグレードとは、少額の料金でソフトウェアを同じだが新しい、改良されたバージョンに更新する権利のことです。 アップグレードの概念により、ユーザーはソフトウェアの異なるバージョンを 1 つのソフトウェアとみなすことができますが、メーカーにとっては、異なるバージョンが異なるプロジェクトとして機能し、したがって完全に異なる製品として機能することがあります。

メーカーの場合、ソフトウェア製品のライフサイクルは次の 3 つのフェーズで構成されます。

3. 開発の継続。

使用には進行中の開発、つまり以前のバージョンの欠点を考慮して新しい機能を実装する新しいバージョンとサブバージョンの開発が伴うことに注意してください。

他の製品と同様、ソフトウェア製品は市場に投入されるまでに 4 つの段階を経ます。 まず、新製品のアイデア (コンセプト) が浮かび上がり、徹底的な技術分析が行われ、その結果、将来の製品の要件が開発されます。 同時に、潜在的な売上、生産コスト、水準と回収期間、市場での競争、必要な投資、短期および長期の利益、リスクの程度を考慮した経済分析が実行されます。

ソフトウェア開発プロセスを段階に分割するにはさまざまな方法があります。 それらの中には、より多くのステージが含まれるものもあれば、より少ないステージも含まれます。 6つの段階は避けられないようだ。 ソフトウェア開発:要件定義設計

コマンドの作成 -- プログラム レイアウト テスト ドキュメント

最初のアクティビティである要件定義は、大規模な Type V システムにとって特に困難ですが、これについてはすぐに詳しく説明します。

ここで意味する設計とは、具体的にはプログラムの設計であり、これらのプログラムが一部であるシステム全体の設計ではありません。 要件の定義を検討した後で、このプロセスをさらに詳しく説明します。

3 番目のポイントは、コマンドを作成することで、ソフトウェア プロジェクトまたは単なるプログラムを一連の機械命令に縮小します。 このプロセスをプログラミングと呼びます。

構成とは、さまざまな人々またはグループによって書かれたプログラムの個々の部分を 1 つの大きなソフトウェア システムに結合、リンクすることです。

ソフトウェア製品の特徴

すべてのプログラムは、その使用の性質とユーザーのカテゴリーに応じて、ユーティリティ プログラムとソフトウェア製品 (製品) の 2 つのクラスに分類できます。

実用的なプログラム (「自分用のプログラム」) は、開発者のニーズを満たすように設計されています。 ほとんどの場合、実用的なプログラムは、データ処理テクノロジにおけるサービスの役割を果たしたり、広範囲に配布することを目的としていない機能的な問題を解決するためのプログラムです。

ソフトウェア製品(製品)は、ユーザーのニーズに合わせて設計され、広く配布、販売されます。

フリーウェア - 自由に配布され、必要な変更を加える権限を与えられたユーザー自身によってサポートされる無料プログラム。

シェアウェアとは、原則として無料で使用できる非営利(シェアウェア)プログラムです。 このような製品を定期的に使用するには、一定の金額の支払いが必要です。

ソフトウェア製品は、あらゆる種類の工業製品と同様に、大量需要の特定の問題 (タスク) を解決するために相互に関連するプログラムのセットであり、販売用に準備されています。

ソフトウェア製品は次のように作成できます。

注文に応じた個別の開発。

ユーザー間での大量配布を目的とした開発。

原則として、ソフトウェア製品にはメンテナンスが必要です。メンテナンスは専門会社 (ソフトウェア販売会社) によって行われますが、開発会社によって行われることはあまりありません。 大量に使用するプログラムを維持するには、検出されたエラーを修正したり、プログラムの新しいバージョンを作成したりするなど、多大な労力がかかります。

ソフトウェア製品のメンテナンス - ソフトウェア製品の機能の維持、新しいバージョンへの移行、変更、検出されたエラーの修正など。

従来のソフトウェア製品とは異なり、ソフトウェア製品には、プログラムの作成時に指定される一連の厳密に規制された品質特性がないか、これらの特性を事前に正確に指定したり評価したりすることができません。 ソフトウェアによって提供される同じ処理機能でも、詳細の深さが異なる場合があります。 ソフトウェア製品の開発にかかる時間とコストですら、事前に高い精度で決定することはできません。 プログラムの主な特徴は次のとおりです。

アルゴリズムの複雑さ(情報処理アルゴリズムのロジック)。

実装された処理機能の構成と詳細度。

処理機能の完全性と一貫性。

プログラムファイルの量。

オペレーティング システムの要件とソフトウェア側の処理の技術的手段。

ディスクメモリ容量。

プログラムを実行するための RAM のサイズ。

オペレーティング システムのバージョン。

コンピュータネットワークの利用可能性など

ソフトウェア製品には、次の側面を反映するさまざまな品質指標があります。

ソフトウェア製品をどの程度 (シンプル、信頼性、効果的) に使用できるか。

ソフトウェア製品の使用はどのくらい簡単ですか?

ソフトウェア製品の使用条件等が変更になった場合、使用することはできますか?

ソフトウェア製品の品質特性のツリー

ソフトウェア製品のモビリティとは、データ処理システム、動作環境、ネットワーク データ処理テクノロジの技術的複雑さから独立していること、およびマルチプラットフォーム ソフトウェア製品がさまざまなモデルのコンピュータにインストールできることを意味します。コンピュータ ネットワーク内での動作を制限することなく、オペレーティング システムを利用できるようになります。 このようなソフトウェア製品の処理機能は、そのまま大量利用に適しています。

ソフトウェア製品の信頼性は、プログラムが中断なく安定して動作すること、所定の処理機能を正確に実行できること、プログラムの動作中に発生するエラーを診断できるかどうかによって決まります。

ソフトウェア製品の有効性は、その直接の目的であるユーザー要件の観点と、その動作に必要なコンピューティング リソースの消費という観点の両方から評価されます。

ソフトウェア市場の存在に関して、重要な特徴は次のとおりです。

ソフトウェア製品が受注生産ではなく、ソフトウェア市場への参入を目的としている場合、マーケティングが全面的に実行されます。競合するソフトウェア製品と類似製品が調査され、ソフトウェア製品に対するユーザーの要件が要約され、販売市場の潜在的な能力が調査されます。を設定し、価格と販売数量の予測を示します。 さらに、ソフトウェア製品の開発に必要な資材、労働力、財源、およびソフトウェア製品のライフサイクルの主要段階のおおよその期間を見積もることも重要です。

ソフトウェア製品が特定の顧客向けのカスタム ソフトウェア製品として作成される場合、この段階で、その開発タスクを正しく策定し、文書化することも重要です。 ソフトウェア製品の要件を誤解すると、その動作中に望ましくない結果が生じる可能性があります。

ソフトウェア製品の構造の設計は、データ処理プロセスのアルゴリズム化、処理機能の詳細化、ソフトウェア製品の構造 (ソフトウェア モジュールのアーキテクチャ) の開発、ソフトウェア製品の情報ベース (データベース) の構造に関連します。タスク、プログラムを作成するための方法と手段の選択、つまりプログラミング技術。

すべてのプログラムは、使用の性質とユーザーのカテゴリーに基づいて 2 つのクラスに分類できます。

1) 功利的なプログラム(「自分用のプログラム」)、開発者のタスクを実行するように設計されています。 ほとんどの場合、実用的なプログラムは、データ処理テクノロジにおけるサービスの役割を果たしたり、広範囲に配布することを目的としていない機能的な問題を解決するためのプログラムです。

2) ソフトウェア製品ユーザーのタスクを満たすように設計された(製品)、幅広い流通と販売。

販売以外にも、通常はインターネット経由でソフトウェア製品 (SP) を合法的に配布する方法があります。

- フリーウェア- 必要な変更を加える権限を与えられたユーザー自身によってサポートされ、寿命や機能に制限がなく、自由に配布される無料プログラム。

- シェアウェア- 通常は無料で使用できる (非商用の) シェアウェア プログラム。 このような製品を定期的に使用するには、一定額の支払いと登録が必要です。 これらには、プログラムの登録の必要性の通知から機能の制限まで、さまざまな制限があります。

- ドネーションウェア- ShareWare の一種。ユーザーがプログラムを気に入った場合に支払わなければならない具体的な金額は示されていません。

- ポストカードウェア- プログラムを使用する正式な権利を取得するには、ユーザーは作者に葉書を送付する必要があります。

- アドウェア- プログラムはエンドユーザーにとって無料ですが、広告が表示され、作成者は広告主から金銭を受け取ります。 最近、この計画は積極的に勢いを増しています。

- トライアル- プログラムは一定期間動作します。その間、ユーザーはその有用性の程度を評価し、購入するかどうかを決定できます。

- デモ- これらは、たとえ限られた時間であっても、プログラムの機能を表示するだけで、実際に使用することはできないビデオです。

ソフトウェアは、動作のために適切に準備され、必要な技術文書があり、サービスを提供し、プログラムの信頼性の高い動作を保証し、メーカーの商標があり、できれば州の登録コードが必要です。 このような条件下でのみ、作成されたソフトウェア複合体をソフトウェア製品と呼ぶことができます。

ソフトウェア— 他の種類の工業製品と同様に販売用に準備された、大量需要の特定の問題 (タスク) を解決するための相互に関連する一連のプログラム。

PP は次のように作成できます。

- 個人の成長注文する(特定のユーザーのデータ処理の詳細が考慮されます)。

発達 大衆向け 分布(実行されるデータ処理機能の普遍性、特定のアプリケーションの条件に合わせたソフトウェアの柔軟性とカスタマイズを確保する必要があります)。

ソフトウェア製品は多岐にわたります 品質指標(米。

2.1)、以下の側面を反映しています。

PP をどの程度 (シンプル、信頼性、効果的) に使用できるか。

ソフトウェアの操作はどの程度簡単ですか?

PPの使用条件等が変更になった場合、PPを使用することはできますか?

可動性 PP は、データ処理システム、動作環境、ネットワーク データ処理技術、対象領域の詳細などの技術的複合体からの独立性を意味します。 モバイル (マルチプラットフォーム) ソフトウェアは、コンピュータ ネットワークでの動作に制限を受けることなく、さまざまなモデルのコンピュータやオペレーティング システムにインストールできます。 これらのソフトウェアの処理機能はそのままで大量利用に適しています。

信頼性ソフトウェアの動作は、プログラムが中断なく安定して動作すること、所定の処理機能が正確に実行されること、およびプログラムの動作中に発生するエラーを診断できるかどうかによって決まります。

米。 2.1. ソフトウェア製品の品質特性のツリー

効率ソフトウェアは、その直接の目的であるユーザー要件の観点と、その動作に必要なコンピューティング リソースの消費という観点の両方から評価されます。 コンピューティング リソースの消費量は、プログラムを保存するための外部メモリの量とプログラムを実行するための RAM の量によって評価されます。

人的要因を考慮するこれは、エンド ユーザーにフレンドリーなインターフェイスを提供すること、ソフトウェアの一部として状況依存のヒントまたはトレーニング システムが存在すること、ソフトウェアに組み込まれた機能を習得および使用するための適切なドキュメント、エラーの分析と診断などを提供することを意味します。

変更可能性 PP は、処理機能の拡張、別の技術処理拠点への移行など、変更を加える能力を意味します。

コミュニケーションスキル PP は他のプログラムとの可能な限りの統合に基づいており、共通の表示形式でのデータ交換 (データベースのエクスポート/インポート、処理オブジェクトの実装またはリンクなど) を保証します。

PP 市場の存在に関して、重要な特徴は次のとおりです。

市場で費やした時間(販売期間)。

開発会社とプログラムの評判。

同様の目的でのソフトウェア製品の利用可能性。

ほとんどの工業製品とは異なり、ソフトウェアの特有の特徴は、その操作が法的根拠、つまりソフトウェア開発者の著作権を尊重した開発者とユーザーの間のライセンス契約に基づいて実行されなければならないことです。

ソフトウェア製品とその主な特徴。

1. ソフトウェア製品の概念とクラス。

2. ソフトウェア製品のライフサイクル。

3. ソフトウェア製品の保護に関する基本概念。

4. 不正コピーから保護するソフトウェア システム。

5. ソフトウェア製品およびデータベースを保護する法的方法。

6. 使用範囲に応じたソフトウェア製品のクラスの特徴。

7. アプリケーション ソフトウェア パッケージの分類。

質問その1。ソフトウェア製品の概念とクラス。

アプリケーション ソフトウェア パッケージ (APP) は、情報ソフトウェア市場の中で最もダイナミックに発展している部分です。 PPP の改善は、あらゆる活動分野でのコンピュータの導入に貢献します。

すべてのプログラムは、使用の性質とユーザー カテゴリに応じて 2 つのクラスに分類できます。

1. 実用的なプログラム (「自分用のプログラム」) は、開発者のニーズを満たすように設計されています。 ほとんどの場合、それらはデータ処理テクノロジのサービスとして機能するか、広範な配布を目的としていない機能的な問題を解決するためのプログラムです。

2. ソフトウェア製品(製品)は、ユーザーのニーズに合わせて広く配布および販売されるように設計されています。

現在、グローバルまたは地域の電気通信を使用して登場したソフトウェア製品を合法的に配布するには、次のような他のオプションもあります。

1. フリーウェア - 自由に配布され、必要な変更を加える権限を与えられたユーザー自身によってサポートされる無料プログラム。

2. シェアウェア – 原則として無料で使用できる非商用 (シェアウェア) プログラム。 このような製品を定期的に使用することを条件として、一定の金額が支払われます。

ソフトウェア製品は、動作のために適切に準備され、必要な文書があり、サービスを提供し、プログラムの信頼できる動作が保証され、メーカーの商標があり、できれば州の登録コードが必要です。 このような条件下でのみ、作成されたソフトウェア複合体をソフトウェア製品と呼ぶことができます。

ソフトウェア製品(PP)は、あらゆるタイプの工業製品と同様に販売用に準備された、大量需要の特定の問題 (タスク) を解決するための相互に関連するプログラムのセットです。

ソフトウェア製品は、注文に応じて個別に開発することも、ユーザー間で大量に配布するための開発として作成することもできます。

質問その2。ソフトウェア製品のライフサイクル。

あらゆる種類のプログラムには特徴があります ライフサイクル、個別のステージで構成されます。

1) ソフトウェア市場のマーケティング、ソフトウェア製品の要件の仕様。

ソフトウェア製品のマーケティングと仕様は、作成されたソフトウェア製品の次の要件を検討することを目的としています。

· ソフトウェアデータ処理機能の構成と目的の決定。

· ソフトウェア製品との対話の性質、ユーザー インターフェイスの種類 (メニュー システム、マウスの使用など) に関するユーザー要件を確立します。

・ソフトウェアを動作させるためのハードウェア、ソフトウェア一式の要件等

この段階では、問題を形式的に説明する必要があります。

2) ソフトウェア製品の構造を設計する。

データ処理プロセスのアルゴリズム化、処理機能の詳細化、タスクのソフトウェアと情報ベース(データベース)の構造の開発、プログラムを作成するための方法とツールの選択(プログラミング技術)に関連します。

3)プログラミング(プログラムコードの作成)、テスト、プログラムの自律的かつ複雑なデバッグ。

これらは設計ソリューションの技術的な実装であり、選択された開発者ツールを使用して実行されます。

4) ソフトウェア製品の文書化、運用および技術文書の作成。

ソフトウェアの文書化は必須の作業であり、原則として開発者自身ではなく、ソフトウェア製品の配布と実装に関係する人によって実行されます。 ドキュメントには、ソフトウェア製品のインストールと信頼性の高い動作の確保、処理機能を実行する際のユーザーのサポート、およびソフトウェア製品を他のプログラムと統合するための手順を決定するために必要な情報が含まれている必要があります。 ソフトウェアの配布と運用が成功するかどうかは、そのドキュメントの品質に大きく依存します。

5) ソフトウェア市場への参入、ソフトウェア製品の配布(マスユーザーへの販売の組織化に関連)。

この段階はできるだけ短くする必要があります。ソフトウェアの宣伝には、広告、販売チャネルの数の増加、価格設定ポリシーなどの標準的なマーケティング手法が使用されます。

6) ユーザーによるソフトウェア製品の操作。

彼と平行して進む 伴奏, この場合、サポートがなくてもプログラムの動作を開始したり、サポートが完了してしばらく経てば継続したりすることができます。 ソフトウェアの販売終了後も、一定期間サポートを行うことができます。 ソフトウェアの動作中に、検出されたエラーは除去されます。

7) ソフトウェア製品のサポート。

ソフトウェア製品の販売停止、サポートの拒否。

原則として、開発会社の技術方針の変更、ソフトウェアの非効率性、致命的なエラーの存在、または需要の欠如が発生した場合に発生します。

異なるソフトウェアのライフサイクルの期間は同じではありません。 最新の PCB のライフサイクルは年単位 (2 ~ 3 年) で測定されます。 コンピューターには、長い間生産中止になった PCB が頻繁に使用されています。

質問その3。ソフトウェア製品の保護 (PP) に関する基本概念。

ソフトウェア製品とコンピュータ データベースは、高度な資格を持つ専門家の知的作業の対象です。 ソフトウェアも、その機能の復元が複雑で労力を要する性質であること、および情報システムの運用にとってソフトウェアが重要であるため、保護の対象となります。

ソフトウェア保護には次の目標があります。

1. プログラムへの不正アクセス、またはその意図的な破壊および盗難の制限。

2. プログラムの不正コピー(複製)の排除。

ソフトウェア製品とデータベースは、いくつかの領域で暴露から保護する必要があります。

1) – コンピュータメディアおよびソフトウェアドキュメントの盗難。 ソフトウェア製品等の不具合。

2) 装置– ハードウェアをコンピュータに接続してプログラムやデータを読み取ったり、物理的に破壊したりする。

3) 専門的なプログラム– ソフトウェア製品またはデータベースを動作不能にする(ウイルス感染など)、プログラムやデータベースの不正コピーなど。

ソフトウェアとデータベースを保護する最も簡単で手頃な方法は、次のとおりです。 アクセス制限。ソフトウェア製品とデータベースへのアクセス制御は、次のように構築されます。

1. プログラムの起動時のパスワード保護。

2. プログラムを実行するためにキーフロッピーディスクを使用する。

3. プログラムやデータ、利用者が利用できる処理機能等の制限

も使用できます 暗号化手法データベース情報または主要なソフトウェア モジュールの保護。

質問その4。不正コピーから保護するソフトウェア システム。

ソフトウェア保護システムを使用する場合、プログラムはコピー不可能な固有の場合にのみ実行されます。 要素。

そのような重要な要素は次のとおりです。

· コピーできないキーが書き込まれたフロッピー ディスク。

· コンピュータハードウェアの特定の特性。

· コンピュータに接続され、識別コードを発行するように設計された特別なデバイス (電子キー)。

PP コピー防止ソフトウェア システム:

· プログラムが起動される環境を特定する。

· プログラムを起動するための適切な環境、つまり承認された起動が許可されている環境を確立します。

· 許可されていない環境からの発射に対する反応を展開する。

· 許可されたコピーを登録する。

· システムのアルゴリズムとプログラムの研究に対抗する。

質問No.5。ソフトウェア製品とデータベースを保護する法的方法。

法的救済には次のようなものがあります。

· 営業秘密に関する法律。

· ライセンス契約および契約。

· ソフトウェアおよびデータベースの販売および使用から経済的利益を受け取る権利を所有者に与える経済的権利。

· 作品における作者の人格の保護を保証する人格権。

多くの文明国では、販売または無料配布を目的としたプログラムの不正コピーは国家犯罪とみなされ、罰金または懲役刑が科せられます。 ただし、著作権自体は、ソフトウェア開発の新しいアイデア、概念、方法論、および技術を保護するものではありません。

質問その6。使用範囲に応じたソフトウェア製品のクラスの特徴。

ソフトウェアの使用範囲(領域)に応じて、次のようになります。

・自律型コンピュータおよびコンピュータネットワークのハードウェア。

· さまざまな主題分野の機能的なタスク。

・ソフトウェア開発技術

情報テクノロジをサポートするために、次の 3 つのクラスのソフトウェアが区別されます。

· システム ソフトウェア。

· アプリケーション パッケージ。

· プログラミング技術ツール。

システムソフトウェアに送信された:

1. 他のプログラムが機能するための動作環境を作成する。

2. コンピュータ自体とコンピュータ ネットワークの信頼性が高く効率的な動作を保証するため。

3. コンピュータ機器およびコンピュータネットワークの診断と予防保守を実行する。

4. 補助的な技術プロセス (コピー、アーカイブなど) を実行するため。

システムソフトウェア –コンピュータおよびコンピュータ ネットワークの動作を保証するための一連のプログラムおよびソフトウェア システム。

アプリケーションパッケージこれらは機能上の問題を解決するためのソフトウェア ツールとして機能し、最も多くの種類のソフトウェアです。 このクラスには、さまざまな主題分野の情報を処理するソフトウェアが含まれます。

コンピュータへのソフトウェアのインストールは資格のあるユーザーによって実行され、その直接の操作は通常、エンド ユーザー、つまり情報の消費者によって実行されますが、多くの場合、その活動はコンピュータ分野からは非常に遠いものです。 このクラスのソフトウェアは、個々の主題分野に非常に特化したものになる場合があります。

アプリケーションパッケージ– 特定の主題領域の特定のクラスの問題を解決するための相互接続されたプログラムのセット。

プログラミング技術ツールキットプログラム開発プロセスを提供し、開発者ツールである特殊なソフトウェアが含まれています。 このクラスの PP は、設計、プログラミング (コーディング)、デバッグ、作成されたプログラムのテストのプロセスのすべての技術段階をサポートします。

システム データ処理の技術的基盤としてのコンピューターの機能は、ソフトウェアの使用に関連付けられています。 プログラムは、タスクを機械で実装するように設計されています。 使用の性質とユーザーのカテゴリに基づいて、プログラムは 2 つのクラスに分類できます。

1. 功利主義的なプログラム

2. ソフトウェア製品

功利主義的なプログラム

開発者のニーズを満たすように設計されています。 ほとんどの場合、実用的なプログラムは、データ処理テクノロジのサービスとして機能するか、広範な配布を目的としていない機能的な問題を解決するためのプログラムです。

ソフトウェア製品

ソフトウェア製品はユーザーのニーズを満たすように設計されています。 これらは、最新のプログラミング ツールを使用した工業デザイン技術に基づいて開発されています。

その特異性は、アルゴリズムとプログラムの開発プロセスの独自性と、その運用が法的根拠に基づいて実行されなければならないという事実にあります。

ソフトウェア製品は、さまざまな基準に従って分類できます。 ソフトウェア製品の使用分野に基づいて分類を考えてみましょう。

1) 自律型コンピュータとコンピュータネットワークのハードウェア

2) さまざまな主題分野の機能的なタスク。

3) プログラム開発技術。

これらの分野で情報技術をサポートするために、次の 3 つのクラスのソフトウェア製品が区別されます。

1) システムソフトウェア

2) アプリケーション プログラミング パッケージ (アプリケーション

3) ソフトウェア)

4) テクノロジープログラミングツール

5) (ツールソフトウェア)

システムソフトウェアコンピュータおよびコンピュータ ネットワークの動作を保証するためのプログラムおよびソフトウェア システムのセットです。

システム ソフトウェアはコンピュータの不可欠な部分であり、それがなければコンピュータのどの要素とも対話することはできません。 このクラスのソフトウェア製品は、主に資格のあるユーザーを対象としています。

これらの製品は、対象分野の詳細に関係なく、一般的なアプリケーションの性質を持っています。 これらには、信頼性と製造性、利便性と使用効率に対する高い要求が課せられます。

アプリケーションパッケージ特定の主題領域の特定のクラスの問題を解決するための相互接続されたプログラムのセットです。

アプリケーション プログラミング パッケージは、最大クラスのソフトウェア製品です。 このクラスには、さまざまな主題分野の情報を処理するソフトウェア製品が含まれます。 これらのソフトウェア製品は、オペレーティング システムがコンピュータにインストールされていれば動作します。 アプリケーション パッケージの最も一般的なグループは、テキスト エディター、グラフィック エディター、データベース、DBMS、スプレッドシート、ゲーム、教科書、辞書などです。


テクノロジープログラミングツールは、作成されたソフトウェア製品の開発、デバッグ、実装のためのテクノロジーを提供するプログラムとソフトウェア パッケージのセットです。

技術的なプログラミング ツールには次のものがあります。

プログラマ ツールである特殊なソフトウェア製品。 このクラスのソフトウェア製品は、作成されたプログラムの設計、プログラミング、デバッグ、テストのすべての技術段階をサポートします。 システムプログラミングの主なタスク:

1) プログラムの開発・改善およびその改善

2) 翻訳者。

3) 新しいタイプの個人用オペレーティング システムの作成

4) コンピュータ、サービスプログラムの開発。

IBM PC では何万ものプログラムが利用可能であっても、ユーザーは既存のプログラムでは実行できない (または実行できるが完全に適切ではない) 何かを必要とする場合があります。 このような場合には、プログラミング システムを使用する必要があります。 新しいプログラムを開発するためのシステム。

パーソナル コンピュータ用の最新のプログラミング システムは通常、プログラムを開発するための非常に強力で便利なツールをユーザーに提供します。 これらには次のものが含まれます。

· プログラミング言語のプログラムを機械語プログラムに変換するコンパイラ、または高級プログラミング言語のプログラム テキストを直接実行するインタプリタ。

· プログラマが使用できる事前に準備されたプログラムを含むプログラム ライブラリ。

· デバッガ、相互参照プログラムなどのさまざまな補助プログラム。

まず第一に、プログラミング システムは、実装するプログラミング言語 (Pascal、BASIC、C、C++、Java など) が当然異なります。

すべてのソフトウェア製品は、使用の性質とユーザーのカテゴリーに応じて、ユーティリティ プログラムとソフトウェア (製品) の 2 つのクラスに分類されます。

功利主義的なプログラム - 開発者のニーズを満たすように設計された、「自分自身のための」プログラム。 ほとんどの場合、ソフトウェアはデータ処理テクノロジにおけるサービスの役割を果たすか、または広範囲に配布することを目的としていない機能上の問題に対するソフトウェア ソリューションです。 ソフトウェア製品 - ユーザーのニーズを満たすように設計され、広範囲に配布および販売されます。

ソフトウェア製品は、動作のために適切に準備され、必要な技術文書があり、サービスを提供し、プログラムの信頼できる動作が保証され、製造元の商標が付いている必要があります。 このような条件下でのみ、作成されたソフトウェア複合体をソフトウェア製品と呼ぶことができます。

ソフトウェア製品にはいくつかの品質特性があります。

アルゴリズムの複雑さ。

完全な処理機能。

プログラムファイルの量。

オペレーティング システムの要件とソフトウェア側の処理の技術的手段。

ディスクメモリ容量。

RAM サイズ。

品質指標には次の側面が含まれている必要があります。

ソフトウェア製品をどの程度うまく使用できますか (シンプル、信頼性、効果的)。

ソフトウェア製品の使用はどのくらい簡単ですか?

ソフトウェア製品の使用条件が変更された場合、使用することはできますか?

ソフトウェア製品の市場の存在という観点から見ると、重要な特徴は、コスト、販売数、市場に費やした時間、製造元とプログラム自体の人気、市場での同様の目的のソフトウェア製品の入手可能性です。 。

どのような種類のソフトウェア製品も、個別の段階で構成されるライフサイクルによって特徴付けられます。


9. プログラムの主な特徴は次のとおりです。

1. アルゴリズムの複雑さ

2. 処理機能実装の構成と作り込みの深さ

3. 処理機能の完全性と一貫性

4. プログラムファイルの容量

5. OSの要件およびソフトウェア側の処理技術的手段

6. メモリディスク容量

7. プログラムを実行するオペレーティング システムのサイズ

8. プロセッサの種類

9.OS時間

10. コンピュータネットワークの利用可能性

PP には、次の側面を反映するさまざまな品質指標があります。

1. PP はどの程度、簡単に、確実に、効果的に使用できるでしょうか?

2. PP の操作は簡単ですか?

3. PPの使用条件が変わった場合でも使用できますか?

PP の機動性は、以下からの独立性を意味します。

1. データ処理システムテクニカルキット

2. 動作環境

3. ドメイン指定等

10. ソフトウェア製品の信頼性。 PPの信頼性。 PP修正可能。 PPのコミュニケーションスキル。 ソフトウェア製品の主な特徴

プログラム品質の主な特徴:

1) モビリティとは、データ処理システム、動作環境、ネットワーク データ処理技術、対象領域の詳細などの技術的複雑さから独立していることを意味します。

2) ソフトウェア製品 (SP) の信頼性は、プログラムが中断なく安定して動作すること、割り当てられた処理機能の精度、プログラムの動作中に発生するエラーを診断できるかどうかによって決まります。

3) ソフトウェアの有効性は、その直接の目的であるユーザー要件の観点と、その操作に必要なコンピューティング リソースの支出の観点の両方から評価されます。

4) ソフトウェアの修正可能性とは、処理機能の拡張、別の技術的処理基盤への移行などの変更を加えることができることを意味します。

5) ソフトウェアの通信性は、他のプログラムとの可能な限りの統合に基づいており、共通の表示形式でのデータ交換が保証されます。

6) 人的要因を考慮するということは、次のことを意味します。

1. データ操作に友好的な干渉を提供します

2. PS の一部としての状況依存のヒントまたはトレーニング システムの存在

3. ソフトウェアのマスタリングと使用に関する優れたドキュメント

4. 発生したエラーの分析と診断

11. プログラムのライフサイクル それは、その作成と適用の最初から最後までのプロセスです。

どのようなタイプのプログラムも、次のような個別のステージで構成されるライフサイクルによって特徴付けられます。

1. ソフトウェア市場のマーケティング、ソフトウェア要件の仕様

2. PP構造の設計

3. プログラミング(プログラムコードの作成)、テストおよびプログラムデバッグ複合体

4. ソフトウェアの文書化、運用準備と文書化技術

5. PP市場への参入、PPの流通

6. 利用者ソフトウェアの動作について

7. PPサポート

8. ソフトウェアの販売中止、サポートの拒否

データ処理システムの技術的基盤としてのコンピュータの機能は、使用されるソフトウェア (プログラム) に関連しています。

プログラム- 問題を解決するためのコンピューター コマンド (命令) の順序付けられたシーケンス。

ソフトウェア- データ処理プログラムとその操作に必要な文書のセット。

プログラムは、タスクを機械で実装するように設計されています。 タスクとアプリケーションという用語は、コンピューター サイエンスとソフトウェアの文脈で非常に広く使用されています。 その中で 問題解決すべき問題であり、 応用- 問題を解決するためのコンピュータ上でのソフトウェアの実装。

すべてのプログラムは、使用の性質とユーザーのカテゴリーに応じて 2 つのクラスに分類できます。 功利的なプログラムそして ソフトウェア製品(製品).

功利主義的なプログラム開発者のニーズを満たすように設計されています。 ほとんどの場合、実用的なプログラムは、データ処理テクノロジでサービスの役割を果たすか、または広範囲に配布することを目的としていない機能的な問題を解決するためのプログラムです。

ソフトウェア製品(製品)ユーザーのニーズに合わせて設計され、広く配布および販売されます。

現在、グローバルまたは地域の電気通信を使用して登場したソフトウェア製品を合法的に配布するには、次のような他のオプションもあります。

· フリーウェア- 自由に配布される無料プログラムは、必要な変更を加える権限のあるユーザー自身によってサポートされます。

· シェアウェア- 原則として無料で使用できる非商用 (シェアウェア) プログラム。 このような製品を定期的に使用するには、一定の金額の支払いが必要です。

ソフトウェア製品は、動作のために適切に準備され、必要な技術文書があり、サービスを提供し、プログラムの信頼できる動作が保証され、メーカーの商標があり、できれば州の登録コードが必要です。

ソフトウェアは、あらゆる種類の工業製品と同様に販売用に準備された、大量需要の特定の問題 (タスク) を解決するための相互に関連するプログラムのセットです。

ソフトウェア製品次のように作成できます:

· 注文に応じた個別の開発。

· ユーザー間で大量配布するための開発。

通常、ソフトウェア製品には次のものが必要です。 護衛、プログラムを配布する専門会社 (ディストリビューター) によって実行されますが、開発会社によって実行されることはあまりありません。

ソフトウェア製品のサポート- これは、ソフトウェア製品の機能、新しいバージョンへの移行、変更、検出されたエラーの修正などのサポートです。

ソフトウェア製品の主な特徴は次のとおりです。

可動性ソフトウェア製品とは、データ処理システム、動作環境、ネットワーク データ処理テクノロジ、対象領域の詳細などの技術的複雑さから独立していることを意味します。

信頼性ソフトウェア製品の動作は、プログラムのスムーズさと安定性、所定の処理機能の実行の正確さ、プログラムの動作中に発生するエラーの診断能力によって決まります。

効率ソフトウェア製品は、その直接の目的であるユーザー要件の観点と、その動作に必要なコンピューティング リソースの消費という観点の両方から評価されます。

人的要因を考慮するこれは、エンド ユーザーにフレンドリーなインターフェイスを提供すること、ソフトウェアの一部として状況依存のヒントまたはトレーニング システムが存在すること、ソフトウェアに組み込まれた機能を習得および使用するための適切なドキュメント、エラーの分析と診断などを提供することを意味します。

変更可能性ソフトウェア製品とは、処理機能の拡張、別の技術処理ベースへの移行など、変更を加える能力を意味します。

コミュニケーションスキルソフトウェア製品は、他のプログラムとの可能な限りの統合に基づいており、共通の表示形式でのデータ交換(データベースのエクスポート/インポート、処理オブジェクトの実装またはリンクなど)を保証します。

ソフトウェア市場の存在に関して、重要な特徴は次のとおりです。

・ 価格; 2)販売数。 3)市場で費やした時間(販売期間)。 4) 開発会社とプログラムの人気。 5) 同様の目的でのソフトウェア製品の利用可能性。

ソフトウェア製品の特有の特徴は (ほとんどの工業製品とは異なります)、その操作が法的根拠、つまりソフトウェア製品開発者の著作権に準拠した開発者とユーザー間のライセンス契約に基づいて実行されなければならないことです。

ソフトウェア製品を保護する方法

ソフトウェア製品を保護する方法は、ソフトウェアと法律に分けられます。 ソフトウェア システムを使用する場合、プログラムはコピー不可能な固有の場合にのみ実行されます。 重要な要素。 それで 重要な要素可能性があるのは次のとおりです:

· コピーできないキーが書き込まれたフロッピー ディスク。

· コンピュータハードウェアの特定の特性。

コンピュータに接続され、識別コードを発行するように設計された特別なデバイス (電子キー)

特許保護プログラムの開発に適用される新しいアプローチまたは方法の開発および使用における優先順位を確立し、その独創性を証明します。

状態 営業秘密プログラムに関して、そのプログラムに精通している人、またはプログラムの運営を許可されている人の範囲を制限し、また、秘密を開示する責任の範囲も決定します。

ライセンス契約これは、著作権、特許保護、企業秘密を含む、ソフトウェア製品の法的保護のあらゆる側面に適用されます。 最も一般的に使用されるライセンス契約は、著作権譲渡契約です。

ライセンス- 1名による譲渡の同意 (ライセンサー)別の人に (ライセンシー宛)名前、製品、技術、またはサービスを使用する権利。 ライセンサーライセンス料を徴収することで収入を増やし、ソフトウェア製品やデータベースの配布エリアを拡大します。 ライセンシーそれらを利用することで収入が得られます。

独占的ライセンス- ソフトウェア製品またはデータベースに対するすべての財産権の売却。ライセンス購入者にはそれらを使用する独占的権利が与えられ、作者または特許所有者はそれらを単独で使用したり他者に提供したりすることを拒否します。

簡易ライセンス- ライセンサーは、ライセンシーにソフトウェア製品またはデータベースを使用する権利を付与し、それらを使用し、同様の条件で無制限の数の人に提供する権利を留保します。

ラベルライセンス- ソフトウェア製品またはデータベースの 1 コピーのライセンス。 このタイプのライセンスは小売販売に使用されます。 各公式購入者は、使用するために販売者とライセンス契約を締結しますが、開発者の著作権は保持されます。

ソフトウェア製品およびコンピュータデータベースの保護に関する法律 著者による個人をその創造的活動の結果として創造されたものとして認識します。 著者へ彼の所有権に関係なく 個人の著作権:プログラムまたはデータベースの作成者、名前、完全性(整合性)。