資産推移シミュレーターを作った
2025年5月25日概要 個人の資産形成を考えるためのツールとして、資産推移シミュレーターを開発したので、それについて紹介したい。 asset-trend-simulator 背景 私はMoney Forwardを使って資産管理をしているが、将来の資産推移のシュミレーションにはSpreadsheetを使ったものを利用していた。 Spreadsheetでもそれなりの精度(実際の資産推移のズレが数十万程度に済むような正確...
概要 個人の資産形成を考えるためのツールとして、資産推移シミュレーターを開発したので、それについて紹介したい。 asset-trend-simulator 背景 私はMoney Forwardを使って資産管理をしているが、将来の資産推移のシュミレーションにはSpreadsheetを使ったものを利用していた。 Spreadsheetでもそれなりの精度(実際の資産推移のズレが数十万程度に済むような正確...
概要 システム設計においてアーキテクチャドキュメントは重要な役割を果たす。特に設計段階においては、関係者に対して設計の妥当性を説明し、合意を形成するための資料として機能する。このドキュメントは、単なる設計情報の羅列ではなく、読者の理解と納得を導くための戦略的な文書であるべきである。 目的を明確にする ドキュメントを作成するにあたって最初に意識すべきは、その目的である。この文書が誰に向けたものであり...
概要 PostgreSQLにおける論理レプリケーションは、データベース内の特定のテーブルに対するDML操作(INSERT、UPDATE、DELETEなど)を、他のPostgreSQLインスタンスに複製する仕組みである。物理レプリケーションとは異なり、論理レプリケーションはテーブル単位で柔軟に対象を選定できるため、データ統合、分散処理、マイグレーションといった用途に適している。 参考: Postg...
概要 PostgreSQLでは、GRANTベースのアクセス制御(テーブルや列レベル)に加え、ユーザー単位で特定の行の可視性や更新可否を制御する仕組み(行レベルのアクセス制御)としてRow Level Security(RLS)が提供されている。 RLSの基本概念 Row Level Securityは、テーブルに対して「ポリシー」を定義することで機能する。 ポリシーは、どのユーザーがどの行にアクセ...
概要 システムの仕様をドキュメントに書き出したい時にどういった構成であるべきか考えることが偶にある。 自分的システム仕様書の構成を記す。 新しいプロジェクトの設計フェーズはもちろん、既存システムの仕様理解のためにもなる構成になっているはず。 構成 01_overview.md # 全体概要 02_system_architecture.md # システム構成 03_dat...
概要 コンテキストマップで整理されたコンテキストについて、なぜそのような切り分け方をしたのか、切り分ける意味が何かといったことを開発者以外にも伝えたい、という課題があった。 そこで本稿では、「境界づけられたコンテキスト」について、開発者以外にも伝わるような説明を試みる。 コンテキストの違いを意識する 同じ言葉であっても、コンテキストが異なれば言葉の意味が変わることがある。 例えば「注文」という言葉...
Open Policy Agentについて詳しく知りたかったので、公式ドキュメントを参照して調べてみた。 Open Policy Agentとは Open Policy Agent(OPA、「オーパ」と発音。)とは、ポリシー適用のためのOSSの汎用ポリシーエンジン。 宣言型言語(Rego、「レイゴ」と発音。)を用いてポリシーをコードとして記述することができる。 Styraによって開発されており、現...
開発者とアーキテクトのためのコミュニケーションガイド ―パターンで学ぶ情報伝達術を読んだ。 視覚情報やテキスト、言語・非言語、ドキュメンテーションなどコミュニケーションに関することを話題とした本。 タイトルは、ソフトウェアエンジニアのためのドキュメンテーションガイドと読み替えても良さそうな内容であると個人的には感じた。 読みやすい内容であるため数時間程度で読める。 自分としてはあまり目新しい情報は...
マルチテナントSaaSアーキテクチャの構築 ―原則、ベストプラクティス、AWSアーキテクチャパターンを読んだ。 SaaSアーキテクチャの概念や実践的なパターンについて書かれている。 SaaSアーキテクチャの二層構造(コントロールプレーンとアプリケーションプレーン) マルチテナントのデプロイモデル オンボーディング手法 アイデンティティ管理とテナント認証 テナントルーティングパターン データパーテ...
OPAを使用したマイクロサービスのアクセス制御システムの実装 OPAを採用したアクセス制御システムのPOCに取り組んでみたので、その内容についてまとめておく。 POCの設計や実装は以下のリポジトリで公開しているため、そちらも合わせて参照されたい。 bmf-san/poc-opa-access-control-system 1. はじめに 1.1 背景と課題 まず、本記事で扱う重要な概念として「権限...