システム開発部の前澤です。NISA制度変更に伴うシステム開発対応(以下、NISA制度対応)を担当しています。 今回は、NISA制度対応の要件定義書を書くときに注意していることについて紹介させていただきます。
1. NISA制度対応の要件定義
NISA制度対応では、NISA口座開設などの事務手続きを行う事務部や、お客さまが使用するWEB画面のレイアウトを作成する営業部とともに要件定義を行っています。またNISA制度対応はNISA口座が取り扱い開始となった2014年に開発した既存システムを改修することが多いため、既存システムを担当したことがないシステム開発メンバが読んでも理解できるような要件定義書を作成するように心がけています。
2. 要件定義書を書くときに気を付けていること
NISA制度対応の要件定義書では、「NISA口座パターン表」、「事務部の業務フロー図」、「データ値バリエーション」に特に注意して作成しています。
2-1. NISA口座パターン表
NISA口座が取り扱い開始となった2014年から複数回の制度変更を経て、お客さまのNISA口座の保有状況とNISA口座開設パターンが複雑になっています。そのためNISA口座パターン(全50パターン)を表形式で整理しています。NISA口座開設に関わる法令要件が変更されたときは、このNISA口座パターン表をもとに法令要件の変更点を確認しています。
2-2. 事務部の業務フロー図
事務部の業務フロー図では、既存の業務フローに対する変更点を強調するだけでなく、以下(1)(2)も明記しています。
(1)同一のお客さまが同じNISA口座開設を申込できる回数
例えば同一のお客さまがNISA口座開設の電子申込と書類申込を1回づつ行った場合、事務部はどちらかの申込を不備として、もう一方の申込を正備として事務手続きする必要があります。お客さまが申込できる回数は事務手続きに影響するため申込回数を明記しています。
(2)事務担当者が手続きするときの制限時間
制限時間を明記することで、余裕時間が少ない手作業がないことを確認しています。また制限時間だけでなく、NISAロールオーバー申込の事務手続きの締切日なども明記するようにしています。
2-3. データ値バリエーション
NISA制度対応では2014年に開発した既存システムのデータ値バリエーションに対して、新しいデータカラムを追加したり、既存のデータカラムに新しいデータ値を追加することが多いです。そのため追加する新しいデータ値だけでなく、既存のデータ値バリエーションを調査してnull(空欄)なども明記することで、システム開発時に不具合を埋め込まないように注意しています。
(補足)null値で埋め込みやすい不具合の例
例えば「上記のデータカラム①=null(NISA未申込)」の場合は『処理A(NISA開設申込なし)』で処理させたいと考えていても、null値を考慮せずに以下のようなIf文の条件式を実装してしまえば、間違って『処理B(NISA開設申込あり)』で処理されてしまいます。そのため過去にNISA制度対応を経験したことがないシステム開発メンバでも理解できるように、null(空欄)の存在を要件定義書に明記するようにしています。
3. まとめ
NISA制度対応の要件定義書を書くときに注意していることについて紹介させていただきました。 今後も、様々な立場の担当者(事務部、営業部、システム開発メンバなど)が読みやすい要件定義書を作成することで、システム開発の品質を保つように努めていきたいです。