ファイナンシャルプランナー(FP)のノウハウを結集した、無料のライフプランシミュレーションソフト Financial Teacher System 5

当ライフプランソフトの内部設計・拡張性

このページでは、当ライフプランソフト内部の技術的仕組みや、他システムとも連携できる拡張性を持つことを解説しています。
※全体的に、技術的な記述となっています。

システムを3階層で開発

ライフプランソフトFinancial Teacher Systemの内部は、次の3階層で構成の上、開発しています。

この構成は、企業向けのコンピュータシステムを設計する時に用いられる一つの設計技法です。
当ライフプランソフトは、具体的に次のようにソフト内部を設計しています。詳細ついては順番にこのページで解説をしていきます。

3つの階層の解説

金融計算ロジック層

最初に、真ん中の金融計算ロジック層についてご説明します。
金融計算ロジック層には、各種金融計算機能や、シミュレーション実行機能が詰め込まれた部分で、ライフプランソフトの核になる部分です。

保険の必要保証額の計算、住宅ローン返済額の計算、各種年金や税額の計算、資産運用シミュレーション、キャッシュフロー表の構築など、あらゆる金融計算をこの層が担当します。
ファイナンシャルプランナー、税理士、金融機関の職員など、金融コンサルタントがビジネスを行う上で重要となる業務上のロジックが詰まった層です。

この金融計算ロジック層は、多数のAPIを公開しています。
他のシステムと連携しやすく、また改変が容易なように工夫して開発しています。
そのため、ファイナンシャルプランニングに関して、多様な機能拡張が容易に実現できるのです。

データアクセス層

システムで使うデータを呼び出したり、保存する機能を専門的に扱う部分です。
データの保存先を変更したり、データの読み書き方式を変更する場合に、この層に修正を加えます。

例えば当ライフプランソフトを金融機関向けに移植する場合には、このデータアクセス層のプログラムを、金融機関で保有している顧客データを読み書きするように改変するだけで済みます。

また、データベースソフト(SQLServer、Oracle、MySQLなど)を切り替えたり、データベースソフト自体のバージョンアップにも、柔軟に対応できます。

他、シミュレーションで使用する各種統計情報のファイルから、計算で必要なデータを読み取るのもこの層が担当します。

UI・UX層

ライフプランソフトのユーザーが直接触れる部分となる、ユーザーインターフェースを提供する部分です。
各種計算結果や表示データを、どのように表現(出力)するかを担当する層です。

たとえばパソコンのブラウザを使って操作する場合には、ブラウザが解釈できるHTML形式で出力します。
パソコンインストール型ソフト、タブレット・スマートフォンアプリであれば、各ソフト・アプリの仕様に沿った画面UI機能を提供します。
他のシステムとの連携をする場合には、外部APIを公開する役割も担います。

家計分析レポートやキャッシュフロー表を、ExcelファイルやPDFファイルに出力するのも、この層が担当します。

3階層構造で開発している理由

FPの皆様のご要望を、迅速に反映できる

この3階層で開発することで、ソフトウェアが果たす役割を分担させることができ、その結果FPの皆様のご要望を柔軟に素早く実現することができるのです。
そのおかげで、他のライフプランソフトにはない様々なメリット、特徴を打ち出せるのです。

いくつかの具体例でご紹介しましょう。

当ライフプランソフトの利用者には、

を提供しております。そのため、当ライフプランソフトのUI・UX層では、

を実装しています。

データ、計算結果の見せ方を変えたい場合には、このUI・UX層に変更を加えれば実現できます。
(計算ロジックを変える必要はないので、金融計算ロジック層の改変は不要です)

また、データセンターで稼働しているデータベースソフト Microsoft SQL Server 上に各種データを保管しています。
こことは異なる場所にあるデータを使って金融シミュレーションを実現したい場合には、このデータアクセス層のプログラムを変更すれば実現できます。

ソフトを他のシステムに移植したり、独自にカスタマイズされたバージョンのソフトを作る時に、金融計算ロジック層やUI・UX層を変更する必要がないように、3階層に分けて作っているのです。

税制改正に対応する場合

たとえば税制改正や法改正などに対応する場合、

すればよい、という仕組みにしているのです。

ソフトを、部品単位で開発できる

当ライフプランソフト開発チームは、複雑なシミュレーションシステムを部品化して作っており、その部品となるプログラムを柔軟に組み合わせることで、難易度の高いシステムもスピーディに開発できる強みがあります

また、当ライフプランソフトを転用、移植する場合も、すべてを一から作る必要がなく、各層の必要な部分だけをカスタマイズするだけで済みます。

他のシステム、ソフトと連携させることも可能

他のシステム・ソフトと、当ライフプランソフトとを連携させて動かすことも可能です。
ウェブ経由で連携する場合には、JSONやRESTなどの仕組みで当ライフプランソフトを操作することも可能です。
UI・UX層で、ビジネスロジック層の機能を利用するためのWebAPIを提供することで実現できます。

当ライフプランソフトのビジネスロジック層のプログラムの実態は、dllファイルであり、これ自体が多数の計算処理を行うクラスライブラリAPIの役割も果たします。
このdllファイルを直接組み込んだアプリケーションを開発することで、当ライフプランソフトのノウハウを活用して、他のシステムと連携することも可能です。

 


 

マネー・FPに関するメールマガジンを発行しています。
(全て無料・姉妹サイトのメールマガジン案内ページへ移動します)

 


▲このページ一番上に戻る