連載 [第5回] :
即活用!業務システムの開発ドキュメント標準化詳細設計書(後半)
2005年8月15日(月)
BL一覧表
ビジネスロジック(BL)は、MVCアーキテクチャの処理部分(M)をつかさどるオブジェクトです。図2のように表示部分(V)や入力部分(C)からは直接データにアクセスせず、BLを経由してやり取りを行う構図となります。
BL一覧表は、この"機能"で使用されるBLをすべて洗い出し、BLとテーブルの関係を一覧で表したものです。第2回にCRUD表について説明しましたが、そのCRUD表をBL単位に表したものがBL一覧表ということになります。横欄にBLを並べ、縦欄に関連するテーブルをすべて記述します。そしてBL単位に表示(S)、挿入(I)、更新(U)、削除(D)のアクセスに分けて、BLとテーブルの関連を示します。
更新・処理仕様書
各ビジネスロジックの更新・処理内容は、図4の「更新・処理仕様書」と図5の「補足説明書」に記述します。これまでのドキュメントは"機能"単位で作成するものでしたが、この2つはビジネスロジック単位で作成します。つまり、1機能の中にBLが3つ存在していれば、「更新・処理仕様書」「補足説明書」も3セット作成されることになります。
更新・処理内容の記述は、アプリケーションの内容に応じて異なります。そのため、どこまでテンプレートの形で提供できるかは難しい課題となりますが、DUNGEONではインターフェースとデータ更新処理の2つを「更新・処理仕様書」で表形式とし、そこで表しきれない処理内容を「補足説明書」に記述するようにしています。
図4は「更新・処理仕様書」のテンプレートです。左側の欄には、このBLに対する画面側から見た場合のインターフェース項目が記載されています。どのような引数を渡すか、そしてどんな処理結果をアウトプットとして受け取るかなど、内部処理とは独立した形でインターフェース項目を定義するのです。インターフェースされる各パラメータごとに、I/Oの区別、データ型、サイズ、必須かどうかなどについても定義します。
右側の欄には、このBLから見たデータソースに対する更新処理を記述しています。アクセス対象となるテーブルや列を更新対象データ欄に記述し、列ごとにどのような値をセットするかを更新元データ欄に記述します。
データに対するアクセスには、挿入と更新と削除があります。削除はレコード単位ですが、挿入と更新は列(項目)単位に値を記述する必要があります。挿入と更新で別々にアクセス内容を記述するのは手間なので、本シートではInsertを基準とし、Updateもある場合に更新欄に○を付けることで簡略記述化しています。
BLが受け取った値を元にそのままテーブルを更新する処理は、記述が非常に簡単です。インターフェース欄に書かれた入力項目が、そのまま更新元データ欄に記載され、更新対象データ欄のテーブル/列に対応します。
もう少し複雑な処理も本シートで対応できます。例えば入力項目が「数量」と「単価」、更新対象データが「金額」というような場合は、更新元データ欄に計算式「数量」×「単価」と記載します。丸め処理を定義するような場合は、備考に「少数切捨て」というように記載すれば良いでしょう。
連載バックナンバー
Think ITメルマガ会員登録受付中
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。