基本情報技術者試験対策~システム開発編~DFDとE-R図などを分かりやすく解説

よく出題されるDFDとE-R図について解説します。また稼働率の基礎問題も解説してます。

【目次】気になる所をクリック!

DFD(Data Flow Diagram) とは

DFD(Data Flow Diagram)は、データフロー, プロセス, データストア,源泉の要素を組み合わせ、業務のデータの流れと処理を分かりやすくする方法です。

DFDは、情報システムの分析と設計の初期段階でよく用いられ、システムがどのように機能するかを理解するのに役立ちます。DFDにはいくつかの主要なパーツがあり、それぞれがシステム内の異なる要素や活動を表しています。

  1. エンティティ (External Entity): システムの外部に存在するもので、システムとデータを交換するアクター(人、組織、または他のシステム)を表します。エンティティは、しばしば四角形または長方形で表され、システムの境界線の外側に配置されます。
  2. プロセス (Process): システム内でデータに対して行われる操作や変換を表します。プロセスは、データを入力として受け取り、何らかの処理を行い、結果としてデータを出力します。プロセスは通常、円形または丸い角のある四角形で表され、内部には処理の名前や番号が記載されます。
  3. データフロー (Data Flow): システム内のデータの移動や伝達を表します。データフローは、エンティティ、プロセス、およびデータストア間のデータの流れを示し、通常は矢印で表されます。矢印の方向はデータの移動方向を示し、矢印のラベルは移動するデータの種類や内容を表します。
  4. データストア (Data Store): システム内でデータが一時的または永続的に保管される場所を表します。データストアは、データベース、ファイル、またはその他の記憶装置を指すことがあります。データストアは通常、2本の平行線で表され、その間にデータストアの名前や番号が記載されます。

これらの要素を組み合わせることで、DFDはシステム内でデータがどのように移動し、加工され、保管されるかを視覚的に示します。DFDを作成することで、システムの概要を把握し、システム内の特定のプロセスやデータフローに関連する問題を特定しやすくなります。

DFDのパーツの意味(簡略版)

活用例

例で言うと下のような感じです。この例では「顧客から受注を受けて、顧客マスターを使って在庫確認する」図となっています。

E-R図とは

E-R図とは、実体(エンティティEntity)とその属性および、その関連(リレーションシップrelationship)を表現する図であり、データモデリングのため関係データベースの設計で活用されています。

具体例としては次のような感じです。

この1..*とかの数字や*の意味は次の通りです。

記号内容
0..1 0 or 1 
  1..1(1) 1
0..*(*)0以上
1..*1以上

稼働率の計算

一言でいえば上のような感じです。

稼働率は並列と直列の接続があります。計算方法は、

直列の稼働率

稼働率がO1,O2の場合、両方が稼働していなければシステムが停止する場合の稼働率は、

O1 × O2

並列接続の稼働率

稼働率がO1,O2の場合、少なくとも一方が稼働していればシステムが継続する場合の稼働率は、

1-(1-O1)(1-O2)

覚えづらい場合は、具体的な数字を書いて上がるか下がるかイメージしたらいいと思います。

モジュール結合度

モジュール結合度とは、部品という意味で使われる モジュール 同志の結びつきを表す言葉です。

モジュール結合は独立性と保守性の意味で低い方がいいとされています。下の六段階に分かれており、上の方が高い(強い)特徴を持ちます。つまり、データ結合が一番好ましいとされています。

内容結合お互いの中身を直接見合う、参照している。
共通結合共通領域のデータを一緒に見ている
外部結合外部領域のデータを一緒に見ている
制御結合制御要素を受け渡ししている。
スタンプ結合処理に必要なデータ構造だけ受け渡ししている。
データ結合必要なデータ項目だけを引数として受け渡している。

ブラックボックステストとホワイトボックステスト

これもよく出てくる問題です。

ブラックボックステストは、入力と出力だけで仕様書どおりの出力が得られるかのテストです。

ホワイトボックステストは、プログラムの内部構造を調べて仕様書どおりに動くチェックするテストです。

なので、「内部構造」とかの単語がでてくるとホワイトボックスになる流れです。



未経験がプログラマーになる近道は?

プログラミングに関心があるけど、未経験者に出来るの?

不安になりますよね。

では、受講生の97%以上がプログラミング未経験。しかも、受講した後、転職までサポートしてくれるので、プログラマーの仕事が出来ます!

まずは、無料でカウンセリングや相談が出来るので、「自分のやりたいができるの?」「どうやったらプログラマーになれるの?」など疑問点を聞いてみましょう!

よかったらシェアしてね!
  • URLをコピーしました!
【目次】気になる所をクリック!