Software-engineering-se-overview-qa2

提供:Dev Guides
移動先:案内検索

SE概要Q&A#2

質問:ソフトウェアエンジニアリングの重要性について説明してください。 ソフトウェアシステムの開発プロセスで実行される手順は何ですか。

  • 回答: *

ソフトウェア工学

ソフトウェアエンジニアリングは、高品質のソフトウェアとコンピュータープログラムを取得するために使用されるいくつかの種類の方法、思考、および手法を備えたコンピューターサイエンスの一部です。

  1. 最低費用
  2. 所定の時間に
  3. 連続生産

ソフトウェアエンジニアリングの有用性は、その属性の重要性で判断できます。 両方とも同じ方法で使用されます。 ソフトウェアエンジニアリングの基本的な目標は、提供可能な高品質のソフトウェアを提供することです。

  1. 与えられた時間に、
  2. 予算内
  3. それはニーズを満たします。

したがって、これは次の点を得るための最良の方法またはプログラムであると言えます。

  1. ソフトウェアシステムの最適な出力を提供するため。
  2. ソフトウェアシステムを使いやすくし、開発する。
  3. 生産率を向上させるため。
  4. ソフトウェアシステムの開発のための予算を維持するため。
  5. ソフトウェアエンジニアリングの職務満足。

下記のポイントを満たすために、高品質のソフトウェアを作成する必要があります。

  1. 一貫性
  2. 品質の向上
  3. 最低費用
  4. 時間内に
  5. 信頼性と
  6. ユーザーのニーズを満たす

ソフトウェアシステムの開発中に使用される手順

一貫性を実現するために、ソフトウェア開発プロセスは一連のフェーズに分割されます。 各フェーズを達成するために、さまざまな方法、ツール、および手法が適用されます。 ソフトウェアシステムの開発プロセスは、このプロセスに一貫性を持たせるために2つの部分に分かれています。 ソフトウェア開発プロセスを完了するために、いくつかの種類の方法、テクニックが使用されました。 以下の手順は、ソフトウェアシステムの開発に使用されます。

ソフトウェアシステムの開発中に使用される手順

  1. 問題とエラーの完全な知識。
  2. 改善する能力
  3. 達成するための目標を見つけます。
  4. 新しいソフトウェアにあるはずの利点を見つけてください。
  5. その変更後に影響を受ける計画の領域を見つけます。 +問題を研究する場合、問題の他の解決策と、ユーザーの予算内にあるべきコストを考える必要があります。 この改善には、多くのスキルと注意が必要です。
  6. 作業能力の研究-最初のステップの結果に基づいて、作業能力の研究に関する次のステップに進みます。 このステップでは、現在のシステムと将来のシステムについて考え、それらを比較しました。 比較の分野は、熟練した人材、推定期間、およびその他の重要な事項です。 作業能力の研究は、重要なことを決定するのに役立ちます。
    • この計画は賛成か反対かです。
    • 必要なリソースに対応できるかどうか。
    • もう一度考えてみて。 多くの種類の作業能力がチェックされました。 . 技術的な仕事の能力*-
    • 必要な技術はありますか?
    • 利用可能なツールを使用して、新しいシステムを開発できますか? 将来のシステムは必要に応じて結果を提供できますか? +新しいシステムは、ユーザーにより適しているか、専門家によってチェックされます。 例:バックエンドでOracleを使用してVisual Basicを開発するためのソフトウェアの実際の要件の場合。 しかし、ここでは、14ビットの語長で48プロセッサ未満を使用しているため、このソフトウェアは技術的に適切ではありません。 システムのニーズを満たしているかどうかに関係なく、使用されているテクノロジーとツールが心配です。 . ソーシャルワーク能力*-これは、人々が新しいソフトウェアを好きまたは嫌いなユーザーの行動の研究です。
  7. 経済的な作業能力-この要因は、新しいソフトウェアの利点と節約が古いソフトウェアと比較してより多いと判断されます。
  8. 法的作業能力-法的作業能力により、新しいソフトウェアは政府の下にあると判断されました。 ルールかどうか。 作業能力調査の結果によると、以下に到達するために分析されます。
    • さまざまなソリューション計画の策定。
    • 他のソリューション計画とその利点を確認し、それらを比較するため。
    • 最高の成果を見つけて、彼を年率化します。

ソフトウェアには分析と仕様が必要-分析は、このステップで主要な役割を果たす以下の要因の研究です。

  • システムにより、多くの種類のアクティビティが実行されます。
  • 多くの機能とサブシステム間の接続。
  • 最後に、システムの境界外の関係。

ニーズ分析-ニーズ分析の主な目的は、このソフトウェアとそれに関するデータと情報の収集でユーザーが期待することを理解することです。

  • 作業能力
  • パフォーマンス
  • 使いやすい
  • メンテナンスが簡単

このプロセスでは、いくつかの種類のツールと方法で.flowチャート、収集されたデータ、図などが使用されました。 この演習の一部です。 これに関するすべての問題とニーズを解決した後、情報はソフトウェアニーズ仕様文書にまとめられます。

ソフトウェアの仕様が必要-このトピックでは、次の点について説明します。

  • ユーザーのすべての文書は体系的に整理する必要があります。
  • インターフェースの性質
  • ハードウェアの必要性
  • 合意の基礎
  • クライアントと開発者の間の道徳的、法的調整
  • 詳細な計画
  • 顧客が期待するすべての品質を備えていることを顧客が分析および確認する。
  • ソフトウェアエンジニアの助けを借りて、ソリューションを開発します。

ソフトウェアの設計と仕様-このステップのプロセス中に、プログラミング言語で使用される仕様をベースに変換する必要があります。 2つのタイプのアプローチがあります。

  1. 従来のアプローチ-このアプローチも2つの部分に分かれています。
    • 最初の部分-
  2. このソフトウェアの特定のニーズはなくなりました。
  3. 構造化分析は、ソフトウェア設計の形に変換されます。
  4. 多くの機能の分析、データのフローチャートは、構造化された分析の一部です。
    • 第2部-アーキテクチャ設計は、構造化の分析後に行われます。
  5. 必要なコンポーネント。
  6. ソフトウェアの一般的なベース。
  7. すべてのデザインが提供するプログラム。
  8. モジュール間のインターフェース。
  9. システムのデータベースおよび結果形式。
  10. オブジェクト指向設計-この設計では、問題の領域で発生した多くの種類のオブジェクトとこれらのオブジェクト間の関係が把握されます。

コーディングとモジュールのテスト-コーディング段階はソフトウェア設計の後に行われます。 コーディングは、これを利用したプロセスであり、形状構造をプログラミング言語に変換できます。 デザインのすべての部分はプログラムモジュールです。 必要に応じてモジュールの確実性をチェックするすべてのモジュールをノウサギします。

統合およびシステムテスト-このフェーズでは、システム全体として、アーキテクチャ設計に従って共同でテストされるすべてのモジュールが対象となります。 モジュールに関係する相互接続が正しいかどうかの情報を取得するために、開発者がこのステップを実行しました。 テストの効果は、

  1. 高品質のソフトウェアの生産
  2. ユーザーはより満足しています
  3. 安価なメンテナンス費用
  4. 正確さ
  5. 保証の結果

このシステムは、SRSに準拠しているかどうかの情報を取得するためにのみテストされています。 最後に、このテストはクライアントの存在下で行われます。

システムの実装-システムの実装とは、クライアントサイトで情報を提供することです。 実装には3つのタイプがあります。

  1. 直接変換
  2. 段階的変換
  3. 並列変換

システムのメンテナンス-このステップは、その後お客様が当社のソフトウェアを使用して問題が発生した場合に必要です。これらの問題は、Webサイト、インストール、および運用に関連している可能性があります。 メンテナンスは3つの部分に分かれています。

  • 修正メンテナンス-ソフトウェア開発のプロセス中に修正障害が見つからないか、検出されません。
  • 完全なメンテナンス-このステップでは、このソフトウェアによって実行される機能は、顧客のニーズに応じて増加しました。
  • アダプティブメンテナンス-ソフトウェアを新しいオペレーティングシステム、環境、または新しいコンピューターに変換することをアダプティブメンテナンスと呼びます。