■計測の具体的方法(P72)
◆ファンクション候補の抽出
ER図などで候補を抽出する。
◆ファンクションの確定
一時ファイルなどの中間ファイルは対象外とする。
◆ファンクションタイプの決定
ILFかEIFかを振り分ける。1回でも更新されたらILFとなる。更新の規模や頻度は考慮しない。
◆評価点の付与
◇ファンクションの複雑さの評価
複雑さを表す指標は以下のものがある。
・データ項目数(DET)
・レコード種類数(RET)
マトリックスを作成し、複雑さの「低」「中」「高」を決定する。
RET(レコード種類数)が1の場合
DET(データ項目数)
1 ~19:低
20~50:低
51~ :中
RET(レコード種類数)が2の場合
DET(データ項目数)
1 ~19:低
20~50:中
51~ :高
RET(レコード種類数)が3の場合
DET(データ項目数)
1 ~19:中
20~50:高
51~ :高
◇複雑さに応じてFPの点数を付ける
3段階の複雑さに応じて設定された重み係数をかけ、FP数を算出する。
EI(外部入力)
複雑さが低:×3
複雑さが中:×4
複雑さが高:×6
EQ(外部出力)
複雑さが低:×4
複雑さが中:×5
複雑さが高:×7
EQ(外部照会)
複雑さが低:×3
複雑さが中:×4
複雑さが高:×6
ILF(内部論理ファイル)
複雑さが低:×7
複雑さが中:×10
複雑さが高:×15
EIF(外部I/Fファイル)
複雑さが低:×5
複雑さが中:×7
複雑さが高:×10
■トランザクション・ファンクションの計測
データ・ファンクションがDBに着目するのに対して、トランザクション・ファンクションは画面や帳票などの仕様書を参考にしながら処理の流れを分析する。
ファンクション・タイプとして以下のものがある。
・外部入力(EI)
・外部出力(EO)
・外部照会(EQ)
◆外部入力(EI)
画面や他のアプリケーションからのデータ入力によって、データ・ファンクションを更新する処理(バッチ処理も含む)。
◆外部出力(EO)
画面や帳票、他のアプリケーションにデータを出力する処理。出力データに計算や派生データを含むもの。
例:四則演算、グラフ作成、文字列の連結など
◆外部照会(EQ)
内部論理ファイル(ILF)を更新せず、画面や帳票、他のアプリケーションにデータを出力する処理。ただし、出力データに計算や派生データを含まないもの。(コードから名称への変換、四捨五入、単位の変換などデータ項目がもつ本来の意味が失われないものはEQとしてカウントする)
例:郵便番号から住所検索
■ファンクションの粒度
ファンクションの単位はトランザクションの単位となる。
(データの入力から参照データの表示や更新完了まで)
メニュー画面の表示やメニューから目的とする画面の表示などデータファンクションの参照や更新が伴わない処理はトランザクション・ファンクションに該当しない。
■データ項目数(DET)のカウントのルール
◆可変なデータ項目をカウントする。
◆実行のきっかけは1DETとカウントする。ショートカットキーやツールバーのアイコンなど、同じ処理が重複するきっかけはいくつあっても1DETとする。
◆エラーや確認メッセージはまとめて1DETとする。
◆入力と出力の両方に出てくる項目は重複カウントしない。
◆繰返し項目や年月日が分割されている項目は重複カウントしない。
■レコード種類数(RET)のカウント
以下のルールがある。
◆トランザクション単位で参照、更新されるデータ・ファンクションの個数をカウントする。
◆規模や項目数は考慮しない。
■FP数算出テーブル
ファンクション・タイプと、複雑さ(DETとRETから算出)からFP数を算出し、ファンクションごとに加算していく。
EI 低:×3 中:×4 高:×6
EO 低:×4 中:×5 高:×7
EQ 低:×3 中:×4 高:×6
ILF 低:×7 中:×10 高:×15
EIF 低:×5 中:×7 高:×10
◆ファンクション候補の抽出
ER図などで候補を抽出する。
◆ファンクションの確定
一時ファイルなどの中間ファイルは対象外とする。
◆ファンクションタイプの決定
ILFかEIFかを振り分ける。1回でも更新されたらILFとなる。更新の規模や頻度は考慮しない。
◆評価点の付与
◇ファンクションの複雑さの評価
複雑さを表す指標は以下のものがある。
・データ項目数(DET)
・レコード種類数(RET)
マトリックスを作成し、複雑さの「低」「中」「高」を決定する。
RET(レコード種類数)が1の場合
DET(データ項目数)
1 ~19:低
20~50:低
51~ :中
RET(レコード種類数)が2の場合
DET(データ項目数)
1 ~19:低
20~50:中
51~ :高
RET(レコード種類数)が3の場合
DET(データ項目数)
1 ~19:中
20~50:高
51~ :高
◇複雑さに応じてFPの点数を付ける
3段階の複雑さに応じて設定された重み係数をかけ、FP数を算出する。
EI(外部入力)
複雑さが低:×3
複雑さが中:×4
複雑さが高:×6
EQ(外部出力)
複雑さが低:×4
複雑さが中:×5
複雑さが高:×7
EQ(外部照会)
複雑さが低:×3
複雑さが中:×4
複雑さが高:×6
ILF(内部論理ファイル)
複雑さが低:×7
複雑さが中:×10
複雑さが高:×15
EIF(外部I/Fファイル)
複雑さが低:×5
複雑さが中:×7
複雑さが高:×10
■トランザクション・ファンクションの計測
データ・ファンクションがDBに着目するのに対して、トランザクション・ファンクションは画面や帳票などの仕様書を参考にしながら処理の流れを分析する。
ファンクション・タイプとして以下のものがある。
・外部入力(EI)
・外部出力(EO)
・外部照会(EQ)
◆外部入力(EI)
画面や他のアプリケーションからのデータ入力によって、データ・ファンクションを更新する処理(バッチ処理も含む)。
◆外部出力(EO)
画面や帳票、他のアプリケーションにデータを出力する処理。出力データに計算や派生データを含むもの。
例:四則演算、グラフ作成、文字列の連結など
◆外部照会(EQ)
内部論理ファイル(ILF)を更新せず、画面や帳票、他のアプリケーションにデータを出力する処理。ただし、出力データに計算や派生データを含まないもの。(コードから名称への変換、四捨五入、単位の変換などデータ項目がもつ本来の意味が失われないものはEQとしてカウントする)
例:郵便番号から住所検索
■ファンクションの粒度
ファンクションの単位はトランザクションの単位となる。
(データの入力から参照データの表示や更新完了まで)
メニュー画面の表示やメニューから目的とする画面の表示などデータファンクションの参照や更新が伴わない処理はトランザクション・ファンクションに該当しない。
■データ項目数(DET)のカウントのルール
◆可変なデータ項目をカウントする。
◆実行のきっかけは1DETとカウントする。ショートカットキーやツールバーのアイコンなど、同じ処理が重複するきっかけはいくつあっても1DETとする。
◆エラーや確認メッセージはまとめて1DETとする。
◆入力と出力の両方に出てくる項目は重複カウントしない。
◆繰返し項目や年月日が分割されている項目は重複カウントしない。
■レコード種類数(RET)のカウント
以下のルールがある。
◆トランザクション単位で参照、更新されるデータ・ファンクションの個数をカウントする。
◆規模や項目数は考慮しない。
■FP数算出テーブル
ファンクション・タイプと、複雑さ(DETとRETから算出)からFP数を算出し、ファンクションごとに加算していく。
EI 低:×3 中:×4 高:×6
EO 低:×4 中:×5 高:×7
EQ 低:×3 中:×4 高:×6
ILF 低:×7 中:×10 高:×15
EIF 低:×5 中:×7 高:×10



