当ライフプランソフトの内部設計・拡張性
このページでは、当ライフプランソフト内部の技術的仕組みや、他システムとの連携や拡張性について解説しています。
※全体的に、技術的な記述となっています。
システムを3階層で開発
ライフプランソフトFinancial Teacher Systemの内部は、次の3階層で設計されています。
この構成は、企業向けのコンピュータシステムの開発で用いられる設計技法の一つです。
この3階層を連携して動作させることで、大規模開発も効率よく行え、機能拡張に強い仕組みにできるのです。
3つの階層の解説
金融計算ロジック層
最初に、真ん中の金融計算ロジック層についてご説明します。
金融計算ロジック層には、各種金融計算機能や、シミュレーション実行機能が詰め込まれた部分で、ライフプランソフトの核になる部分です。
保険の必要保障額の計算、住宅ローン返済額の計算、老齢年金や遺族年金の計算、資産運用シミュレーション、キャッシュフロー表の構築など、あらゆる金融計算をこの層が担当します。
ファイナンシャルプランナー、税理士、金融機関の職員など、お金の専門家が意識するロジックが詰まった部分です。
データアクセス層
システムで使うデータを呼び出したり、保存する機能を専門的に扱う部分です。次のような役割を持ちます。
- 金融計算ロジック層での計算結果を、保存する・読み出す
- 過去の入力内容や、年金額・教育費などの統計データを読みだして、金融計算ロジック層に渡す
データの読み書きを一手に引き受ける部分であり、クラウド(SaaS)システムではとても重要な部分です。
UI・UX層
ライフプランソフトのユーザーが直接触れる画面など、ユーザーインターフェースを提供する部分です。
たとえば、ソフトの入力画面や計算結果のグラフを、ブラウザで表示できるHTML形式で出力します。
パソコンに対してはパソコン用画面を、スマホに対してはスマホ用画面を表示するのも、このUI・UX層の役割です。
家計分析レポートやキャッシュフロー表を、ExcelファイルやPDFファイルに出力するのも、この層が担当します。
また、他システムと連携する場合には、シミュレーション結果などをAPIで他システムに公開する役割も担います。
3階層構造で開発している理由
この3階層で開発することで、ソフト内部で役割分担ができます。それにより、
- 計算機能を改善させる場合は、金融計算ロジック層を改良する
- 入力画面やシミュレーション結果の表示を変更したい場合は、UI・UX層を改良する
- データの保存条件やデータベースへの読み書き方式を変える場合は、データアクセス層を改良する
という対応方法をとることができます。
結果的に、ソフトを改良しやすく改善要望を迅速に反映できることが、最大のメリットになります。
いくつかの具体例で、詳しくご紹介します。
画面デザイン・レイアウトを変える場合
画面のデザイン・レイアウトを変えたい場合には、UI・UX層に変更を加えれば実現できます。
お金の計算式を変える必要はないので、金融計算ロジック層の修正は不要です。
税制改正・法改正に対応する場合
多くの場合、お金の計算式が変わるので、金融計算ロジック層に修正が必要です。
改正により、ウェブ画面や家計分析レポートの表示内容を変える必要があれば、その観点でUI・UX層も修正します。
また、システムに保存する項目が増える場合には、データアクセス層も修正します。
年金額や教育費などの統計データが更新される場合は、その数値が保存されているデータアクセス層だけを更新します。
データの保存形態を変えたい場合
例えば次のような場合に、データアクセス層に改修を加えます。
- データの保存先データセンターを変えたい場合
- データベースに対する暗号化方式を変える場合
- データベースシステムをバージョンアップさせる場合
- 統計データのファイル形式が、CSVからExcel形式に変わった場合
計算ロジックを変えるわけではないので、金融計算ロジック層の修正は不要です。
画面にも特に影響を与えないので、UI・UX層への修正も不要です。
複数人での役割分担がしやすい
3層に分けた設計方針なので、次のような役割分担が可能です。
- UI・UX層は、主にウェブデザイナーとウェブエンジニアが担当
- 金融計算ロジック層は、ファイナンシャルプランナーと金融系エンジニアが担当
- データアクセス層は、データベースエンジニアとセキュリティ担当者が担当
柔軟な作り替えが可能、企業ごとにカスタマイズ提供も可能
金融計算ロジック層、データアクセス層、UI・UX層のそれぞれで、プログラムを部品化して作成しています。
その部品を柔軟に組み合わせることで、全体として複雑なライフプランシミュレーションシステムを、効率よく開発しています。
この仕組みにより、当ライフプランソフトを一部カスタマイズして、企業ごとに提供することが簡単にできます。すべてを一から作るよりも、早く安く作ることができます。
参考までに、過去の事例をご紹介します。
- 計算ロジックはそのままで、画面やレポートを独自デザインのものに変更
(UI・UX層のカスタマイズ) - データアクセス層を拡張し、利用者のデータ分析ができる仕組みを導入
(データアクセス層のカスタマイズ)
他のシステムとの連携も可能
金融計算ロジック層、データアクセス層、UI・UX層のそれぞれで、WebAPIを採用できます。
例えば、JSON形式・XML形式・CSV形式でのやり取りにより、他システムと連携することも可能です。
Windows環境の場合は、プログラムのdllファイルのご提供により、開発生産性を高めることもできます。
他のシステムと連携しやすく、改変が容易な工夫を取り入れて、開発しています。
品質管理・検査システムにより、早く正確なシステム改修を実現
Financial Teacher Systemは、「品質管理・検査システム」の管理下で開発されています。
品質管理・検査システムは、Financial Teacher System本体とは別の独立したシステムであり、金融計算ロジック層とデータアクセス層が正しく動作しているかを検査しています。
高品質なライフプランソフトを効率よく、長期的に維持できる秘訣をご紹介します。
不具合のないプログラム開発を、力強く支援
税制改正・社会保険改正への対応や、新しい計算方式の導入など、Financial Teacher Systemのプログラムは頻繁に改修しています。
その改修のたびに、改修した場所だけでなく、システム全体をあえてテストしています。
これにより、開発者による「想定外のバグ」を事前に防ぎ、不具合の99.9%以上を事前に検知するなど、大きなメリットをもたらしています。
Financial Teacher Systemに新たな機能が加えられた場合、その新たな機能も品質管理・検査システムの管理対象となります。
そのため、ライフプランソフトの網羅的な検査体制を構築できており、2022年10月時点で約3万項目を検査しています。
これだけの項目のテストを人力で行うのは、非常に大変ですが、それを完全自動化しています。
開発中にほぼすべての不具合を検知できるので、ソフトの大幅なリニューアルも自信をもってスピーディーに行えています。
信頼できるライフプランソフトを、長期的に提供できている
Financial Teacher Systemは毎年の制度改正を含め、これまで1000以上の機能改修を行ってきました。これだけの機能改修を少人数で長期的に続けられるのも、Financial Teacher Systemをこの検査システムと両輪となって、開発してきたからです。
それを、ライフプランソフトFinancial Teacher Systemが証明しています。
(個人ユーザーへのサポート企画)
みなさんの人生が豊かになることを、心から応援するFPの集まりです。
役立つマネーの情報、ライフプランソフトの活用法をお届けしたり、セミナーなどイベントを企画しています。
- 10/15(日) 不動産とお金のミニセミナー
第1回 どちらがおトク!?マイホーム購入or賃貸 - ライフプラン応援隊のページはこちら
(Zoom参加OK・録画配信あり)
ソフトの機能や使い方を学び、お客様にご満足いただけるコンサルティングの進め方も習得できます。基礎から実践まで、4レベルに分かれています。
- 10/29(日) ライフプランソフトで相談者の老後資金計画をサポートしよう!
- 11/26(日) 複雑な収入支出のFP相談に対応できる!ライフプランソフト実践
お客様に価値あるFP業務を行うための、実務で役立つスキルを学べる勉強会です。
- 10/29(日) FP業務で役立つ Excelテクニック 関数編
- 11/26(日) FPなら知っておくべきメンタル不調・リストラ・再雇用の相談対応
当ライフプランソフト開発にご協力いただける、ウェブデザイナーとウェブプログラマーを募集しています。詳しくはこちら