Skip to content
Published on

ITエンジニアのための日本語システム設計プレゼンテーション表現完全ガイド

Authors
  • Name
    Twitter

はじめに

日本のIT企業でシステム設計案を発表するには、技術力だけでなく論理的な日本語表現が必要です。特にシステムアーキテクチャの説明、技術選定の根拠の提示、トレードオフの分析の過程で、適切な敬語と専門用語の組み合わせが重要です。

プレゼン開始

自己紹介とテーマ紹介

本日は、新規決済システムのアーキテクチャ設計についてご説明いたします。
(本日は新しい決済システムのアーキテクチャ設計についてご説明します。)

インフラチームの金と申します。本日のプレゼンは約30分を予定しております。
(インフラチームの金です。本日のプレゼンテーションは約30分を予定しています。)

本日のアジェンダは3点です。まず現状の課題、次に提案アーキテクチャ、最後にロードマップです。
(本日のアジェンダは3つです。まず現状の課題、次に提案するアーキテクチャ、最後にロードマップです。)

背景説明

まず、現行システムの課題からご説明します。
(まず、現行システムの課題からご説明します。)

現在のモノリシックアーキテクチャには、以下の3つの課題があります。
(現在のモノリシックアーキテクチャには、以下の3つの課題があります。)

レスポンスタイムが年々悪化しており、P993秒を超える状況です。
(レスポンスタイムが年々悪化しており、P993秒を超える状況です。)

デプロイに平均4時間かかっており、リリース頻度のボトルネックになっています。
(デプロイに平均4時間かかっており、リリース頻度のボトルネックになっています。)

アーキテクチャ説明

全体構造の説明

提案するアーキテクチャの全体像をご覧ください。
(提案するアーキテクチャの全体像をご覧ください。)

システムは大きく3つのレイヤーに分かれています。
(システムは大きく3つのレイヤーに分かれています。)

フロントエンドからAPIゲートウェイを経由して、各マイクロサービスに振り分けられます。
(フロントエンドからAPIゲートウェイを経由して、各マイクロサービスに振り分けられます。)

データ層はPostgreSQLをメインDBとし、Redisをキャッシュとして配置しています。
(データ層はPostgreSQLをメインDBとし、Redisをキャッシュとして配置しています。)

コンポーネント詳細説明

次に、各コンポーネントの詳細をご説明します。
(次に、各コンポーネントの詳細をご説明します。)

認証サービスはOAuth 2.0OIDCを採用しており、Keycloakで実装します。
(認証サービスはOAuth 2.0OIDCを採用しており、Keycloakで実装します。)

メッセージキューにはKafkaを採用し、サービス間の非同期通信を実現します。
(メッセージキューにはKafkaを採用し、サービス間の非同期通信を実現します。)

コンテナオーケストレーションにはKubernetesを使用し、EKS上で稼働させます。
(コンテナオーケストレーションにはKubernetesを使用し、EKS上で稼働させます。)

技術選定の根拠

比較検討の説明

技術選定にあたり、3つの候補を比較検討しました。
(技術選定にあたり、3つの候補を比較検討しました。)

RDBMSの選定では、PostgreSQL、MySQL、Aurora の3つを比較しました。
RDBMSの選定では、PostgreSQL、MySQL、Auroraの3つを比較しました。)

総合的に判断して、PostgreSQLを採用することを推奨します。
(総合的に判断して、PostgreSQLを採用することを推奨します。)

選定根拠の提示

PostgreSQLを選定した理由は主に3点あります。
(PostgreSQLを選定した理由は主に3つあります。)

第一に、JSONBサポートにより柔軟なスキーマ設計が可能です。
(第一に、JSONBサポートにより柔軟なスキーマ設計が可能です。)

第二に、パーティショニング機能が充実しており、大量データの管理に適しています。
(第二に、パーティショニング機能が充実しており、大量データの管理に適しています。)

第三に、社内にPostgreSQLの運用ノウハウが蓄積されています。
(第三に、社内にPostgreSQLの運用ノウハウが蓄積されています。)

不採用の理由

MySQLを不採用とした理由は、ウィンドウ関数のサポートが限定的なためです。
(MySQLを不採用とした理由は、ウィンドウ関数のサポートが限定的なためです。)

Auroraはコスト面で現時点では過剰と判断しました。
(Auroraはコスト面で現時点では過剰と判断しました。)

ただし、トラフィックが10倍に増加した場合は、Aurora への移行を検討します。
(ただし、トラフィックが10倍に増加した場合は、Auroraへの移行を検討します。)

トレードオフ分析

この設計にはトレードオフがあります。率直に共有させていただきます。
(この設計にはトレードオフがあります。率直に共有させていただきます。)

マイクロサービスの利点は独立デプロイと技術スタックの自由度ですが、
運用の複雑性が増す点がデメリットです。
(マイクロサービスの利点は独立デプロイと技術スタックの自由度ですが、
運用の複雑性が増す点がデメリットです。)

結果整合性(Eventual Consistency)を採用するため、
強整合性が必要な決済処理には別途対策が必要です。
(結果整合性(Eventual Consistency)を採用するため、
強整合性が必要な決済処理には別途対策が必要です。)

この点については、Sagaパターンで補完する設計としています。
(この点については、Sagaパターンで補完する設計としています。)

非機能要件

非機能要件についてもご説明いたします。
(非機能要件についてもご説明いたします。)

可用性は99.95%SLOとして設定しています。月間ダウンタイムは約22分です。
(可用性は99.95%SLOとして設定しています。月間ダウンタイムは約22分です。)

スケーラビリティについては、HPAにより秒間10,000リクエストまで自動スケールします。
(スケーラビリティについては、HPAにより秒間10,000リクエストまで自動スケールします。)

セキュリティは、mTLSによるサービス間暗号化とOPA によるポリシー制御を実装します。
(セキュリティは、mTLSによるサービス間暗号化とOPAによるポリシー制御を実装します。)

災害復旧については、マルチAZ構成とし、RPO5分、RTO30分を目標とします。
(災害復旧については、マルチAZ構成とし、RPO5分、RTO30分を目標とします。)

見積もりとロードマップ

実装にかかる工数と期間をご説明します。
(実装にかかる工数と期間をご説明します。)

Phase 1は基盤構築で3ヶ月、Phase 2はサービス移行で4ヶ月を見込んでいます。
(Phase 1は基盤構築で3ヶ月、Phase 2はサービス移行で4ヶ月を見込んでいます。)

必要なリソースはバックエンド4名、インフラ2名、QA1名の合計7名です。
(必要なリソースはバックエンド4名、インフラ2名、QA1名の合計7名です。)

月額の運用コストは現行比で約20%増加しますが、開発効率の向上で年間では回収可能です。
(月額の運用コストは現行比で約20%増加しますが、開発効率の向上で年間では回収可能です。)

Q&A対応

質問を受ける

ここまでで何かご質問はございますか?
(ここまでで何かご質問はございますか?)

ご不明な点がございましたら、お気軽にお聞きください。
(ご不明な点がございましたら、お気軽にお聞きください。)

回答パターン

ご質問ありがとうございます。〜についてですが...
(ご質問ありがとうございます。〜についてですが...
良い指摘ですね。その点については検討段階で議論しました。
(良い指摘ですね。その点については検討段階で議論しました。)

おっしゃる通りです。そのリスクに対しては、フォールバック機構を用意しています。
(おっしゃる通りです。そのリスクに対しては、フォールバック機構を用意しています。)

正直に申しますと、その点はまだ検討中です。次回までに調査いたします。
(正直に申しますと、その点はまだ検討中です。次回までに調査いたします。)

難しい質問への対応

鋭いご指摘ですね。確かにその観点は考慮に入れるべきでした。
(鋭いご指摘ですね。確かにその観点は考慮に入れるべきでした。)

その点については、持ち帰って詳細に検討させていただきます。
(その点については、持ち帰って詳細に検討させていただきます。)

現時点では仮説ベースですが、PoC で検証してから最終判断したいと考えています。
(現時点では仮説ベースですが、PoCで検証してから最終判断したいと考えています。)

プレゼン締め

以上が新規決済システムのアーキテクチャ提案となります。
(以上が新規決済システムのアーキテクチャ提案となります。)

本日のまとめです。マイクロサービス化により、デプロイ頻度を10倍に向上させ、
レスポンスタイムを50%改善できると見込んでいます。
(本日のまとめです。マイクロサービス化により、デプロイ頻度を10倍に向上させ、
レスポンスタイムを50%改善できると見込んでいます。)

ご清聴ありがとうございました。ご検討のほど、よろしくお願いいたします。
(ご清聴ありがとうございました。ご検討のほど、よろしくお願いいたします。)

重要な技術用語 韓日英対照表

韓国語日本語英語
가용성可用性(かようせい)Availability
확장성スケーラビリティScalability
응답 시간レスポンスタイムResponse Time
처리량スループットThroughput
가동률稼働率(かどうりつ)Uptime
비기능 요건非機能要件Non-functional Requirements
견적見積もり(みつもり)Estimation
공수工数(こうすう)Man-hours
운용運用(うんよう)Operations
장애障害(しょうがい)Incident/Failure
복구復旧(ふっきゅう)Recovery
이관移行(いこう)Migration

クイズ:日本語システム設計プレゼンテーション表現チェック(7問)

Q1. プレゼンテーションを始める際の適切な表現は?

「本日は〜についてご説明いたします」が適切です。

Q2. 技術選定の根拠を示す際に使う表現は?

「〜を選定した理由は主に3点あります。第一に...第二に...第三に...」

Q3. トレードオフを率直に共有する際の表現は?

「この設計にはトレードオフがあります。率直に共有させていただきます。」

Q4. 質問に答えられない場合の適切な対応表現は?

「正直に申しますと、その点はまだ検討中です。次回までに調査いたします。」

Q5. SLOを説明する日本語表現は?

「可用性は99.95%をSLOとして設定しています。」

Q6. コスト増を正当化する表現は?

「月額の運用コストは現行比で約20%増加しますが、開発効率の向上で年間では回収可能です。」

Q7. プレゼンテーション締めくくりに適切な表現は?

「ご清聴ありがとうございました。ご検討のほど、よろしくお願いいたします。」