# リモートアクセスサービスの機能拡張
【プロジェクト概要】
リモートアクセスサービス機能の負荷分散を実現する機能拡張プロジェクトでプロジェクトリーダーとして担当。
【担当フェーズ】
技術調査、基本設計、詳細設計、実装、テスト
【担当業務】
・メンバーの立ち上げ
・調査内容の取りまとめ、精査
・業務内容のアサイン
・アーキテクトレビュー
【実績・取り組み】
### メンバーの立ち上げ
自分以外のメンバーは新規の業務委託メンバーだったため、既存のサービスに対する理解がなく、メンバーの立ち上げから行う必要がありました。プロジェクトリーダーとして、作業内容を伝えるだけでなく、背景や目的を理解してもらうよう務めるように心がけたことで、メンバーからの提案なども行われ、QCDを達成することができた。
### アーキテクチャ決定
リモートアクセスサービスの負荷分散を実現するためには、仲介サーバーとUTMサーバーが上手く連携し、割り振り方法の決定、IPアドレス付与方法の決定などの課題があり、これらは未調査のものであった。
それらの方式を決定するために、各課題に対して、複数アイデアを出し、実現性やコスト、メンテナンス性などの観点からQOCで比較し、最適なアーキテクチャーを検討し、グループ内のアーキテクトチームのレビューを重ねることでアーキテクチャを決定することができた。
### 性能測定ツールの作成
大量のクライアントが同時にアクセスするケースをテストする手段が、端末を大量に動作させることは難しく、今までツールが存在していなかった。
負荷分散の実現を確認するためにも性能測定ツールは必須だと感じ、提案・開発いたしました。今までプロジェクトに導入実績のなかったterraform, Docker, GCP, Ansibleを組み合わせることで実現できることを自ら、考案し、導入提案、ツール開発を行いました。技術を選定した背景は、大量のインスタンスを同時や順次コントロールする必要があったため、クラウド上で大量のインスタンスをTerraformで作成し、Ansibleで操作することで解決できるのではないかと考え、導入した。TerraformやAnsibleは知らなかったツールでしたが、業務外活動(Hardening)で情報を得ることができたもので、その知識を業務にフィードバックすることができた。