System-analysis-and-design-structured
構造化分析
アナリストはさまざまなツールを使用して、情報システムを理解および説明します。 方法の1つは、構造化分析を使用することです。
構造化分析とは何ですか?
構造化分析は、分析者がシステムとそのアクティビティを論理的に理解できるようにする開発方法です。
これは、既存のシステムの目的を分析および改善し、ユーザーが簡単に理解できる新しいシステム仕様を開発するグラフィカルツールを使用する体系的なアプローチです。
次の属性があります-
- アプリケーションのプレゼンテーションを指定するグラフィックです。
- システムフローを明確に把握できるように、プロセスを分割します。
- 物理的ではなく論理的です。つまり、システムの要素はベンダーやハードウェアに依存しません。
- これは、高レベルの概要から低レベルの詳細まで機能するアプローチです。
構造化分析ツール
構造化分析では、さまざまなツールと手法がシステム開発に使用されます。 彼らは-
- データフロー図
- データ辞書
- 決定木
- 決定表
- 構造化された英語
- 疑似コード
データフロー図(DFD)またはバブルチャート
これは、システムの要件をグラフィカルな形式で表現するために、Larry Constantineによって開発された手法です。
- システムのさまざまな機能間のデータの流れを示し、現在のシステムの実装方法を指定します。
- これは、要件仕様を最低レベルの詳細に機能的に分割する設計段階の初期段階です。
- そのグラフィカルな性質により、ユーザーとアナリスト、またはアナリストとシステム設計者の間の優れたコミュニケーションツールになります。
- システムが処理するデータ、実行される変換、保存されるデータ、生成される結果、およびそれらが流れる場所の概要を示します。
DFDの基本要素
DFDは理解しやすく、必要な設計が明確ではなく、ユーザーがコミュニケーションに表記言語を使用する場合に非常に効果的です。 ただし、最も正確で完全なソリューションを得るには、多数の反復が必要です。
次の表は、DFDの設計に使用される記号とその重要性を示しています-
Symbol Name | Symbol | Meaning |
---|---|---|
Square | Square | Source or Destination of Data |
Arrow | Arrow | Data flow |
Circle | Circle | Process transforming data flow |
Open Rectangle | Rectangle | Data Store |
DFDのタイプ
DFDには、物理DFDと論理DFDの2つのタイプがあります。 次の表に、物理DFDと論理DFDを区別するポイントを示します。
Physical DFD | Logical DFD |
---|---|
It is implementation dependent. It shows which functions are performed. | It is implementation independent. It focuses only on the flow of data between processes. |
It provides low level details of hardware, software, files, and people. | It explains events of systems and data required by each event. |
It depicts how the current system operates and how a system will be implemented. | It shows how business operates; not how the system can be implemented. |
コンテキスト図
コンテキスト図は、システムの概要を示す1つのDFDによってシステム全体を理解するのに役立ちます。 まず、主要なプロセスについてはほとんど説明せずに言及し、次にトップダウンアプローチでプロセスの詳細を説明します。
混乱管理のコンテキスト図を以下に示します。
データ辞書
データディクショナリは、システム内のデータ要素の構造化されたリポジトリです。 すべてのDFDデータ要素の説明、つまりデータフロー、データストア、データストアに格納されているデータ、およびプロセスの詳細と定義が格納されます。
データディクショナリは、アナリストとユーザー間のコミュニケーションを改善します。 データベースの構築において重要な役割を果たします。 ほとんどのDBMSには、標準機能としてデータディクショナリがあります。 たとえば、次の表を参照してください-
Sr.No. | Data Name | Description | No. of Characters |
---|---|---|---|
1 | ISBN | ISBN Number | 10 |
2 | TITLE | title | 60 |
3 | SUB | Book Subjects | 80 |
4 | ANAME | Author Name | 15 |
決定木
決定木は、意思決定を記述し、コミュニケーションの問題を回避することにより、複雑な関係を定義する方法です。 デシジョンツリーは、水平ツリーフレームワーク内の代替のアクションと条件を示す図です。 したがって、最初に考慮すべき条件、2番目などを示します。
デシジョンツリーは、各条件とそれらの許容されるアクションの関係を表します。 正方形のノードはアクションを示し、円は条件を示します。 アナリストに決定のシーケンスを考慮させ、実際に行わなければならない決定を特定させます。
デシジョンツリーの主な制限は、テストに使用できる条件の他の組み合わせを記述するための形式の情報がないことです。 これは、条件とアクション間の関係の単一の表現です。
たとえば、次の決定木を参照してください-
決定表
決定表は、複雑な論理関係を正確に記述し、簡単に理解できる方法です。
- 結果のアクションが、独立した条件の1つまたは複数の組み合わせの発生に依存する状況で役立ちます。
- 問題とアクションを定義するための行または列を含むマトリックスです。
決定表のコンポーネント
- 条件スタブ-チェック対象のすべての条件をリストする左上の象限にあります。
- アクションスタブ-このような条件を満たすために実行されるすべてのアクションを概説する左下の象限にあります。
- 条件エントリ-右上の象限にあり、条件スタブ象限で尋ねられた質問への回答を提供します。
- アクションエントリ-条件入力象限の条件への回答から生じる適切なアクションを示す右下の象限にあります。
決定テーブルのエントリは、条件の組み合わせとアクションのコース間の関係を定義する決定ルールによって与えられます。 ルールセクションで、
- Yは条件の存在を示します。
- Nは満たされていない条件を表します。
- 空白-アクションに対して、それは無視されることになっています。
- 実行されるアクション状態に対してX(またはチェックマークが付きます)。
たとえば、次の表を参照してください-
CONDITIONS | Rule 1 | Rule 2 | Rule 3 | Rule 4 |
---|---|---|---|---|
Advance payment made | Y | N | N | N |
Purchase amount = Rs 10,000/- | - | Y | Y | N |
Regular Customer | - | Y | N | - |
ACTIONS | ||||
Give 5% discount | X | X | - | - |
Give no discount | - | - | X | X |
構造化された英語
構造英語は、プロセスをより理解しやすく正確に記述する構造化プログラミング言語から派生しています。 これは、アクションの操作を実行するように設計された構造と命令文を使用する手続き型ロジックに基づいています。
- プログラム内のシーケンスとループを考慮する必要があり、問題に決定を伴う一連のアクションが必要な場合に最適です。
- 厳密な構文規則はありません。 順次決定構造と反復の観点からすべてのロジックを表現します。
たとえば、アクションの次のシーケンスを参照してください-
if customer pays advance
then
Give 5% Discount
else
if purchase amount >=10,000
then
if the customer is a regular customer
then Give 5% Discount
else No Discount
end if
else No Discount
end if
end if
疑似コード
疑似コードはどのプログラミング言語にも適合せず、ロジックを平易な英語で表現します。
- 物理設計中および物理設計後に実際のコーディングなしで物理プログラミングロジックを指定できます。
- 構造化プログラミングと組み合わせて使用されます。
- プログラムのフローチャートを置き換えます。
適切なツールを選択するためのガイドライン
次のガイドラインを使用して、要件に合った最適なツールを選択してください-
- 優れたシステムドキュメントを提供するには、高レベルまたは低レベルの分析でDFDを使用します。
- データディクショナリを使用して、システムのデータ要件を満たすための構造を簡素化します。
- ループが多く、アクションが複雑な場合は、構造化された英語を使用してください。
- チェックする条件が多数あり、ロジックが複雑な場合は、意思決定表を使用します。
- 条件の順序付けが重要であり、テストする条件が少ない場合は、決定木を使用します。