A "day in the life" with HCL Software DevOps の翻訳版です。
HCL Software DevOps: "Day in the Life" のデモ
2021年5月18日
著者: Allan Wagner / HCL Software Transformation Architect
HCL Software DevOps は、あらゆる組織の DevOps ニーズを満たす統合ソリューションを提供しています。証拠が必要ですか?Emerald と呼ぶ架空のeコマース企業を使った例を見てみましょう。
エメラルドのメモリアルデーのビッグセールが数週間後に迫っています。この年に一度のセールイベントは、エメラルドの会計年度の中で2番目に大きな収益源であるため、サイトのすべてが完璧に機能していることが非常に重要です。残念ながら、エメラルドのサイトを訪れた人から、新規顧客として登録する方法がわからない、エメラルドのアプリケーションへのサインインに問題があるという報告がありました。製品チームはこの問題を修正し、Emerald がメモリアルデーのセールに間に合うように、できるだけ早く変更を本番に移さなければなりません。幸いなことに、Emerald は以下のような HCL Software DevOps ソリューションを使用しています。
これらのソリューションはすべて、HCLソフトウェアのクラウドネイティブソリューションである HCL SoFy に導入されており、Kubernetesを簡単に利用することができます。ユーザーは、HCL SoFyのカタログから使いたい製品を選び、「デプロイ」ボタンをクリックするだけ。数分後には、ユーザーは仕事に必要なソリューションを手に入れることができます。
Emerald社のプロジェクトマネージャーであるPaula氏は、HCL Compassでの作業中に、優先度の高い不具合が提出されたことに気付き、修復を開始するための計画フィールドを完成させました。その際、彼女はチーム、オーナー、そして履歴に基づいて適切と思われるストーリーポイントの数を特定します。また、ビジネス上の重要性を考慮して、サービスクラスを「迅速」に設定します。さらに、その修正が含まれるべきリリースとスプリントを選択し、バックログの状態に移行します。
次に、EmeraldのアナリストであるAlは、このワークアイテムをレビューし、開発者に追加情報を提供する。Alは、HCL Compassでバックログのすべてのワークアイテムを検索して、この最新のワークアイテムを見つけます。項目を開いて「計画」セクションを展開すると、AlはPaulaがこれを「迅速」とフラグを立て、アクティブなスプリントでの納品を予定していることがわかります。問題を完全に理解するために、Alはまず本番のEmeraldアプリケーションを調査し、ウェブサイトの訪問者がなぜ混乱しているかを確認します。彼は、HCL Compassで欠陥の説明を更新し、ワークアイテムを「分析済み」の状態にします。
エメラルドの開発者であるダイアンは、このスプリントですでにいくつかの仕事を割り当てられていますが、現在はいくつかの依存タスクが完了するのを待っています。帯域幅に余裕があるので、彼女はHCL Compassにログインして、作業状態に引き込める優先度の高いワークアイテムがないかチェックします。そこで彼女は、「迅速」とマークされた欠陥を見つけ、その作業項目のオーナーシップを受け入れ、修正作業を開始しました。
LindaはEmeraldの開発チームのリーダーです。彼女の一日は、この新しい欠陥を知らせるメールやメッセージが飛び交う中で始まり、その修正を製品に反映させることがいかに重要であるかを強調しています。このストレスに加えて、リンダはすでに自分のチームがキャパシティに達していることを懸念しており、根本的な原因やこのキャパシティの問題に対処する方法の答えを持っていません。HCL Accelerate では、Linda はバリューストリームのダッシュボードを見て、本番インシデントの概要を確認し、HCL Accelerate が Emerald Commerce Storefront バリューストリームの作業段階でボトルネックを特定したことに気づきます。バリューストリームを掘り下げると、Linda はボトルネックにカーソルを合わせ、それがフローの不均衡の結果であること、つまり「作業」段階に入る作業が出る作業よりも多いことを確認します。HCL Accelerateは、AI機能を使用してボトルネックを特定し、Accelerateのリポジトリに保存されているデータにアルゴリズムを適用することで、チームがスロースポットを特定するのを支援し、根本原因の詳細を提供して改善を加速させることができます。リンダは、チームの準備が整う前に作業を段階的に進めると、潜在的にチームの認知能力を超えてしまい、人為的でありながら回避可能なバリューストリームのボトルネックが発生することを知っています。リンダはまた、HCL Accelerate が「作業」ステージの「進行中の作業」制限を超えていることを強調していることに気づきます。彼女は、ワークアイテムのリストを確認し、過去24時間に2つの追加があることを確認します。ワークアイテムIDを素早く検索することで、Lindaは2つのワークアイテムを簡単に分離して確認することができます。また、スプリントごとにワークアイテムをフィルタリングすることで、アクティブなスプリントに関連する作業のみが実際に作業段階にあることを確認できます。必要なデータを手に入れたリンダは、次のスタンドアップミーティングで、作業をパイプラインステージに押し込んだり、引き込んだりするとフローが乱れることについて話し合うことにしました。
このデイリースタンドアップミーティングで、リンダは HCL Accelerate のスイムレーンビューを所有者別にフィルタリングした画面を共有しました。各チームメンバーが自分に割り当てられた作業の最新情報を共有した後、リンダは懸念を表明し、ストーリーの1つを分析段階に戻すことについてチームの考えを求めます。これにより、HCL Accelerate が指摘したボトルネックと仕掛かり品の問題が解決され、チームは優先度の高いタスクに集中することができます。
Emerald の製品オーナーである Peter は、機能リリースを遅らせる可能性のある顧客の問題が生産中であると人づてに聞いたため、心配になっています。状況に関する最新のデータを得るために、ピーターはHCL Accelerateのスイムレーンビューに行き、エピックでフィルタリングします。彼は、最も懸念している2つのエピックと、それらが本番でどのような状況にあるかをすぐに確認することができます。
LindaはDianeのソフトウェア修正を確認した後、Dianeからのプルリクエストをクローズし、変更を受け入れます。プルリクエストを閉じることで、マージとビルドが行われ、新しいバージョンがデプロイできるようになります。事態を迅速に進めるために、リンダは HCL Accelerate のパイプラインビューに移動し、新バージョンがベースのユニットテストと静的スキャンを持つ展開可能なアーティファクトとしてリストアップされていることを確認します。Linda は、最新バージョンを開発環境にデプロイする準備ができており、そこでレベルの高いテストを受けることになります。
HCL Launchで作業するLindaは、最新のアプリケーション・バージョンがどの環境にもデプロイされていないことを確認することから始めます。HCL Launchのスナップショット・ビューで、Lindaは新バージョンがデプロイ可能であることを確認し、従うべきデプロイメント・プロセスを選択して開発環境へのデプロイを要求します。実行ログでは、Linda氏はデプロイメントプロセスのすべてのステップを発生時に確認し、出力ログにドリルダウンして各ステップの詳細を見ることができます。API の力を利用して、HCL Launch は HCL Accelerate にデータを送信してパイプライン ビューを更新し、最新のアプリケーション バージョンが開発環境に正常にデプロイされたことを示します。
エメラルド社のテスターであるティムは、ある変更が開発環境にデプロイされることを知り、新しい機能を検証したいと思っています。ティムはHCL OneTest Serverで作業を行い、必要なテストを立ち上げます。Emeraldプロジェクトのダッシュボードを確認すると、さまざまなテストタイプの7つのテストスイートが実行されたが、そのうちの1つのテストスイートが失敗したことがわかる。アラームを鳴らす前に、ティムは失敗したテストスイートのHCL OneTestテスト実行結果をチェックします。実行されたテストステップをスクロールし、テスト中に実行されたアプリケーション画面の画像を見て、ティムはアプリケーションが正常に動作しており、テストも正しく実行されているという結論に達した。問題は、テストデータにある。
ティムは、テストデータが悪いためにテストが失敗することに不満を感じており、さらにテストデータファイルの管理に無駄な時間を費やしていることにも不満を感じていました。そこで彼は、HCL OneTest Serverのテストデータ作成機能で作成した合成テストデータを使って実験を行い、テストを実行することにしました。この実験が成功すれば、長期的には時間の節約になり、Emerald社のテスト活動を新たなレベルで最適化することができるとTim氏は考えている。HCL OneTest Serverのデータ作成画面で、ここで提供されたスキーマが、必要なデータフィールドを正確に含むテストデータファイルを生成することを確認しました。テストデータ作成用のスキーマを使ってテストを再実行したところ、合格しました。
すべてのテストが行われているので、テスト実行結果は自動的にHCL Accelerateに送られます。Linda は HCL Accelerate の「洞察」ビューで品質レポートを介して最新のテストデータを得ることができ、Emerald の関係者にアプリケーション修正の最新情報を簡単に伝えることができます。Linda は、このコード変更をさまざまな環境を通じて本番環境に移行し、HCL Accelerate でその進捗を追跡することができます。
HCL Software DevOps ポートフォリオのいくつかのソリューションを使用して、Emerald の製品チームは以下のことができました。
このストーリーを実際にご覧になるには、以下のビデオをご覧ください。