Skip to main content

ソフトウェアの進化とは何ですか?

ソフトウェアの進化は、商業コンピュータープログラムが実行可能な製品を維持するために、継続的な更新、メンテナンス、および改善を時間の経過とともに必要とするプロセスです。この点で、ソフトウェアの進化は、他のソフトウェアやテクノロジーが前進するにつれて、外部のビジネスと消費者のニーズが変化することによって推進されています。ただし、ソフトウェアの進化の背後にある推進要因は、多くの場合、製品を生産したエンジニアリングチームと、収益性の成功に依存している会社に焦点を当てた内部の要因です。イギリスのロンドン帝国大学は、1970年代初頭にソフトウェアの進化の3つの基本法則を最初に公布しました。これは、2011年の時点で合計8つの法律に拡大されました。線形シーケンシャルモデルとプロトタイプモデルですが、ソフトウェアエントロピーライフサイクルが最も適切に適合していると思われるパラダイムは、生物のダーウィンの進化に似たものです。社会的ニーズが変化するにつれて、産業機械または標準的な操作手順をアップグレードします。ソフトウェアがますます使用されるにつれて、製品の後のリリースに機能する必要がある新しいニーズまたは機能が明らかになります。すべてのソフトウェアは以前は未知のエラーでもリリースされているため、定期的なパッチとメンテナンス手順は、ソフトウェア自体を介した攻撃に対して企業を脆弱にする可能性のあるセキュリティの抜け穴などの正しい状況に実行する必要があります。ソフトウェアの進化の鍵は、このようなプログラムが、さまざまなタイプの新興コンピューター機器やさまざまなオペレーティングシステムアーキテクチャ内で作業するためにますます適応し、プログラムがより広範な魅力を持つことであるという事実でもあります。これらのすべてのニーズを満たすことは、ソフトウェアプログラムが実行可能なままであるかどうかを判断するために重要であり、ソフトウェア資産は2011年現在の情報経済の非常に重要な側面であるため、ソフトウェアの進化はビジネス適応と成長の基本的な側面になりました。ロンドン帝国大学のコンピューター科学者であるMeir Lehmanは、ソフトウェアの進化とガイド付き開発者のプロセスをソフトウェアの視覚化の前進において簡潔に定義したLehmans Lawsを作成したと考えられています。Lehmansの法律は、パフォーマンスに関するフィードバックが増加するとソフトウェアが進化し、その避けられない傾向がますます複雑になるという前提に基づいています。その都市は時間とともに拡大し、軍事構造が武器システムを徐々に改善する方法。プロセスの最初の3つの法則は、継続的な変化、複雑さの向上、および大規模なプログラムの進化として知られているものを詳細に詳述するこれらの傾向をエミュレートします。継続的な変更とは、プログラムが現在の実世界のビジネス条件を満たすためにプログラムが適応する必要があるという事実を指します。これは、プログラムが増え続ける予想外のニーズの多様性を満たす必要があるため、複雑さの増加を反映しています。大規模なプログラムの進化とは、エラー修正の必要性と、市場の要求に容赦なく結び付けられているプログラムの新しいリリースを指します。プログラムの成長は、意図的にそれに専念するリソースのレベルに関係なく、独自の寿命を奪います。5番は、プログラムの漸進的な成長が避けられないと述べている親しみやすさの保存です。8つのリーマン法の6番は継続的な成長であり、消費者の需要を満たすために必要であり、7番は質が低下しているため、すべてのソフトウェアが最終的に満たすことができない機能に制限に直面しているという事実を強調しています。ソフトウェアの進化に関する最終的なリーマン法は、フィードバックシステム自体です。これは、ソフトウェアプログラムの実行可能性に影響を与えるすべての力を結び付けて、それを迅速に成功または避けられない陳腐化と死のどちらにしても促進します。