2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
リンクをコピー
記事をブックマーク
堀越悠久史氏(以下、堀越):3つぐらい(ケーススタディを)持ってきているので、鶴田さんと一緒に考えていきたいと思います。
(スライドを示して)このような問題設定というか、こんな話ですね。IaaS、まぁAWSだと思ってください。そこに構築されたSoEです。Webや先ほどやったようなオンラインショップ、もしくはチャットボットみたいなやつかもしれません。
そこから、チャットボットだと思えば、取引のデータを確認したいです。「私のいついつの履歴って何ですか」みたいなことを確認したいパターンです。ほかのシステムと連携の実績のあるAPIが、オンプレミス(内)で提供されている流れですね。さて、考えられる方式にはどんなものがありますかという話です。
鶴田拓己氏(以下、鶴田):そうですね。ほかのSoR側に他システムと連携実績があるAPIがもう具備されていて、かつVPNや専用線の接続も可能というところでいくと、SoE側からVPNなり専用線なりを通じてAPIを叩きにいって、契約データ、取引履歴データをSoRから返してもらうみたいなもののは、パッと思いつく方式になるかなと思います。
堀越:ありがとうございます。私もそれ(が思いつくもの)ですね。(スライドを示して)検討の過程はこんな感じですが、出来あがった絵はこんな感じのアーキテクチャですね。
特にIaaS、AWSをちょっと念頭に置いてあげると、パブリックサブネットとプライベートサブネットみたいな分け方があるので、そのプライベート側で専用線なり、Site-to-Site VPNを引いてアクセスしてあげます。非常にオーソドックスなものですね。「クラウドデザインパターン」みたいなものを読んでもらえれば必ず載っているパターンかなとに思っています。
あとはこれをどういうふうに議論していくかもけっこう大事なので、ちょっと戻ります。“プランA”の絵です。「SoE側のIaaSの機能でプライベート通信しましょう」みたいなところですね。比較的バランスが取れているプランになるかなと思います。
一方で、実は履歴のデータ、バッチをこちらに送り込んであげるのもけっこう良い手かなと思います。この場合はプライベート通信なしでもできるので、これもありなのかなと。
という時に、では何が問題になるかという話です。「ここなんですけどね」という(議論をするような)ところですね(笑)。「前日データなので」「最新状態じゃないので」というところだと思います。逆に言うと、鶴田さん。「これは、こういう状態だったら実はこれでもいい」という判断はできますかね?
鶴田:先ほどのデータの最新性ですよね。先ほどの、僕が陥ったWebでの通販の部分でいくと、通販であれば、1秒前、2秒前のデータ、連携したタイミングでの最新のデータが欲しいところではあるかなと思っています。
一方で、履歴データや、例えばお客さんのデータはそんなに変わらないから、最新性はそこまで必須ではないかなと考えました。
堀越:ありがとうございます。私もだいたいそんなイメージですね。契約データはやはりそんなに変わらないので、そこは別に(SoE側に)送り込んじゃってもいいかなという気がしています。
なので、やはりデータのあり方とか、そこに対するアクセスのされ方を一緒に考えてあげるのがいいのかなという気がしています。よかったです。だいたい私と同じような意見が出てきて。
鶴田:よかったです(笑)。
堀越:さて、2個目にいってみますか。今度は、冒頭であったSalesforceみたいなやつですね。あれをちょっと念頭に置いてみましょう。
営業さんやコールセンターの方が使うというところです。そしてパブリッククラウドです。純粋なパブリッククラウドなので、直接的に閉域網というか、プライベートの通信ができなさそうなものです。シチュエーションとしては同じで、SoRにある契約データ、取引・履歴データを参照したいというところですね。
「もう答えが出てるじゃん」みたいな話かもしれないですけど(笑)。APIゲートウェイがここにあるとします。スマホアプリみたいなのを持っているところだと、比較的APIゲートウェイを立てていたりするので。そんな中で、どんな方式が考えられるかというところですね。
鶴田:そうですね。すでにあるAPIゲートウェイやAPIを使って連携していくのが考えられる方式かなと思っています。あと、どんな制約があるかですが、やはり認証やセキュリティの部分はちょっと考えなければいけないかなと思いました。
堀越:ありがとうございます。私もそんなところですかね。プランAと書いてありますが、SoEからAPIゲートウェイを通して、SoRからデータを取ってきます。構造は、先ほどと似たようなところですが、「APIゲートウェイを扱う」というところですね。
(スライドを示して)絵としてはこんなものです。SoEがあって、APIゲートウェイを叩きにいきます。先ほどあったように、認証をうまく使うところがポイントになるのかなというところです。
「では他の案はなにがあるんだろう」というところも一緒に考えられるかというところですね。実は、夜間バッチというか日次バッチで、データをコピーしてあげるのも、やはり有力な手段として常に出てくるのかなというところです。
それから、SoE側からSoR側に画面遷移するという方法が実はあったりもします。冒頭で出したSalesforceだと、ボタンを押してあげて、SoRのブラウザで対応していればそこの画面を開くというのも、実はけっこう検討の余地があるところです。
ただ、これは今回のケーススタディに出たものでは×がついていました。どんなイメージ(で×がついた)かというと、SoR側の改修コストがけっこうかかるということです。
昔のシステムはけっこうセッション管理をしていて、URLがずっと同じで違うデータを表示しているものがあったりします。そうすると直接的にURLを指定してリンクできないみたいなことがあって。「そこを直すのは大変ですね」ということがけっこうあったりします。
(スライドを示して)あとはここ(データ量についての評価)かな。これは鶴田さん、どう思いますか? けっこう判断が悩ましいところかもしれないですけれど。
鶴田:あぁ、「膨大なデータ量を」というところですかね。そうですね。データ量の部分はやはりキャパシティ、パブリッククラウドで、特にSalesforceだとストレージ容量が制約として発生してくるので、膨大なデータ量を取り込むのであれば、データストレージを空ける分のデータのアーカイブ(方法)というか、削除の方式もあわせて考えていかなければいけない部分かなと思います。
あとはストレージの計算が必要になってくるし、動き、パフォーマンスにも少なからず影響してくる部分ではあるかなと思っています。
堀越:ありがとうございます。そうですね。私も聞いていて「うん、確かに」(と思いました)。今はSalesforceを念頭に置いていますが、データが多くなると、そこそこ普通のデータベースみたいな動きをけっこうするので、少し大変なことがあるかもしれないというのは、やはり考えなきゃいけませんね。ありがとうございます。
堀越:では、最後のケーススタディにいってみようと思います。実はここは、鶴田さんと台本で読み合わせをしていないところなので、大変かもしれません。
鶴田:はい(笑)。
堀越:これは先ほどと同じです。純粋なパブリッククラウドですね。Salesforceを念頭に置いてください。
迅速にSoR側にある契約状態を変更したい場合、プライベート領域のセキュリティは厳重です。APIゲートウェイみたいなものは置きません。既設のものはないというところですね。
あと、SoRは銀行のものを想定してもらえればいいのですが、勘定系のものがあって、(スライドでは)“MQ”という”伝統ある”という表現をしていますが、昔ながらのメッセージ通信用のミドルウェアがくっついている時です。さて、この状態でどういうふうに連携できますかね。
鶴田:そうですね。金融機関さんとかに、よくある基幹系(のシステム)だと想定して進めていきます。やったことがあるパターンというか、使ったことがある方式だと、データ連携基盤を基幹系から踏み台サーバーにファイルを送り込んで、踏み台サーバーからデータ連携基盤にファイルを送って、そこからFTP通信やSFTP通信でデータ連携基盤とやり取りさせて、SoEとそのデータ連携基盤をコネクトさせます。
データ連携基盤側の機能を使ってやるという方法が、簡単にパッと思いついたのですが、データ連携基盤をかませて連携させる方法かなとパッと出てきました。
堀越:ありがとうございます。ちなみに、SoEの画面から契約状態を変更したい場合は、どうしますか?
鶴田:そうか。即時反映となると、APIがいいんだろうなとは思いますが、ここはAPIゲートウェイもなくて、かつセキュリティが厳重なところなので、SoR側との調整、SoR側の担当されているベンダーさんやステークホルダーの方との調整が制約というか、大変な部分かなと思ってきました。
堀越:ありがとうございます。データ連携基盤は、一応SoEとアクセスが可能なので、そこの穴をなんとか開けてもらってみたいな感じですかね。
鶴田:あぁ、そうですね。はい。
堀越:「既存のAPIゲートウェイとはなにがどう違うんだろう」みたいな話になるかもしれない(笑)。
鶴田:そうですね、確かに(笑)。
堀越:ありがとうございます。ここは実は私も大変悩んだところです。最終的にどんなアーキテクチャになったかだけ先にちょっと紹介すると、こんなアーキテクチャにしました。
これはちょっとわかりにくいのですが、なにを言っているかというと、SoE側は、最初に出したような画面です。あれは、ブラウザ上で作られていて、ユーザーインターフェースは、ブラウザでロードされていくので、あくまで通信上は社内LANに出てきます。
社内LAN上で動いているということは、そこにJavaScriptが動いていたら、社内LAN上から社内の別のサーバーへの通信が一応可能ということになります。ということで、実はUI側だけ中にいて、そこからサーバーを経由して、そこにこのプロトコル変換(サーバ)を噛ませました。
ここ(JavaScriptとプロトコル変換サーバーの間)はAPIですが、MQに飛ばすようにという(変換)のを噛ませて、この子(プロトコル変換サーバー)がプロキシになってくれて叩きにいくような感じですね。
なので、ここはもう完全にマッシュアップみたいな世界でやりました。けっこう訳わからない感じになりました。ちょっといろいろ書いてありますけど、やはり汎用的じゃなく、トリッキーです。これが正解というわけではぜんぜんないと思いますが、1個の乗り越えるための技ではあるのかなと思います。
ここはだいぶお客さんとも揉めながらも、「これだったらできるかね?」ということを話しながらやりました。
(スライドを示して)その時に作ったDA表っぽいのがこれです。
最初の案として、「やはりAPIゲートウェイを作りましょうよ」というところは中心にあったのかなと思っています。ただ、そうするとセキュリティ上の運用を作らなければいけないとかいろいろあって、「うーん」と言って、先ほどのような違う方式になりました。
あとは「画面でうまく連携されればいいんじゃないの?」という話ももちろんあったのですが、やはりそれはSoR側を直さなければいけない。全部が(SoEだけで)できるわけではありません。特に勘定系用のシステムはぜんぜん別になっているところもあって厳しかったです。そんな感じでした。
そうすると、冒頭でやった連携のパターンとして①、②、③、④がありましたが、UI側の連携についても話したし、クライアント連携という今回やったようなパターンもあるし、サーバー連携が一番オーソドックスだし、常に有力な手段になりそうなデータ連携もやりましたという感じだと思います。
(次回に続く)
関連タグ:
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05