CAST Highlight を使用して、AWS クラウドへの移行に向けたアプリケーションの準備状況を評価 - AWS 規範的ガイダンス

CAST Highlight を使用して、AWS クラウドへの移行に向けたアプリケーションの準備状況を評価

Amazon Web Services、Greg Rivera

概要

CAST Highlightは、迅速なアプリケーションポートフォリオ分析を実行するためのSoftware as a Service (SaaS) ソリューションです。このパターンでは、CAST Highlight を設定して使用して、組織の IT ポートフォリオ全体にわたるカスタムソフトウェアアプリケーションのクラウド対応状況を評価し、最新化またはAmazon Web Services (AWS) クラウドへの移行を計画する方法について説明します。

CAST Highlight は、アプリケーションのクラウド対応状況に関する洞察を生成し、移行前に取り除く必要のあるコードブロッカーを特定し、それらのブロッカーを取り除くための労力を推定し、移行後に個々のアプリケーションが使用できる AWS サービスを推奨します。

このパターンは、CAST Highlight をセットアップして使用する手順を示しています。CAST Highlight は、新規ユーザー設定、アプリケーション管理、キャンペーン管理、ソースコード分析、結果分析の 5 つのステップで構成されています。アプリケーションのスキャンと分析を正常に行うには、このパターンのエピックセクションのすべてのステップを完了する必要があります。

前提条件と制限

前提条件

  • ポートフォリオマネージャー権限を持つアクティブな CAST Highlight アカウント。 

  • CAST Highlight ローカルエージェントをインストールするには、ローカルコンピュータに 300 MB 以上の空きディスクスペースと 4 GB のメモリが必要です。

  • Microsoft Windows 8 以降

  • アプリケーションのソースコードは、ローカルエージェントがインストールされているマシンからアクセスできるテキストファイルに保存する必要があります。ソースコードは社外に出ることはなく、すべてのコードはローカルでスキャンされます。

アーキテクチャ

次の図は、CAST Highlight を使用する場合のワークフローを示しています。

CAST Highlight はソースコードファイルをスキャンし、RDS に保存されている分析用の結果ファイルを生成します。

ワークフローの主なステップは、以下のとおりです。

  1. CAST Highlight ポータルにログインし、ローカルエージェントをダウンロードして、ローカルコンピューターにインストールします。Amazon Simple Storage Service (Amazon S3) は、ローカルエージェントインストールパッケージを保存します。

  2. ソースコードファイルをスキャンし、結果ファイルを生成します。

  3. 重要

    結果ファイルを CAST ハイライトポータルにアップロードします。ソースコードは結果ファイルに含まれていません。

  4. スキャンした各アプリケーションのアンケートの質問に回答します。

  5. CAST Highlight ポータルで利用できるダッシュボードとレポートをご覧ください。Amazon Relational Database Service (Amazon RDS) は、コードスキャン、分析結果、CAST Highlight ソフトウェアデータを保存します。

テクノロジースタック

CAST Highlight は、アプリケーションクラウドの準備状況を分析するために以下のテクノロジーをサポートしています。

  • Java

  • COBOL

  • C#

  • C++

  • Clojure

  • PHP

  • JavaScript

  • TypeScript

  • Python (パイソン)

  • Microsoft Transact-SQL

  • VB.Net

  • Kotlin

  • Scala

  • Swift

自動化とスケール

  • CLI アナライザー」 を使用して CAST ハイライト分析プロセスを自動化できます。

ツール

すべての前提条件が満たされていれば、このパターンにはツールは必要ありません。ただし、ソースコード管理 (SCM) ユーティリティ、コード抽出ツール、その他のツールなどのオプションツールを使用してソースコードファイルを管理することもできます。

エピック

タスク説明必要なスキル

CAST Highlight アカウントを有効にして、パスワードを選択します。

CAST Highlight を初めて使用するすべてのユーザーには、アカウント有効化メールが届きます。アクティベーションリンクをクリックして CAST Highlight アカウントを有効化し、パスワードを入力してアクティベーションプロセスを完了します。

該当なし

CAST ハイライトポータルにログインします。

CAST Highlight ホームページは、新しいパスワードを入力すると表示されます。ユーザー認証情報を使用して CAST Highlight ポータルにログインします。

該当なし
タスク説明必要なスキル

アプリケーションレコードを作成します。

CAST Highlight ポータルで、[Manage Portfolio] セクションの [Manage Application] タブに移動します。画面上部の [Applications] タイルで、[Add] を選択します。

該当なし

アプリケーション名を選択します。

アプリケーションの名前を入力して、[Save] を選択します。この名前は CAST Highlight のアプリケーションレコードに使用されます。

該当なし

すべてのアプリケーションについて同じ手順を繰り返します。

スキャンするアプリケーションごとに上記の手順を繰り返します。

該当なし
タスク説明必要なスキル

キャンペーンの作成

CAST Highlight は、「キャンペーン」という用語を使って、特定の時期に分析される一連のアプリケーションを記述します。CAST Highlight ポータルで、[Manage Portfolio] セクションの [Manage Campaigns] タブに進みます。[Create Campaign] を選択して、キャンペーン作成画面を起動します。

該当なし

キャンペーンの名前を入力し、終了日を選択します。

キャンペーンの名前を入力し、終了日を選択します。 

重要

寄稿者は、キャンペーンの終了日を過ぎると申請分析結果を提出できません。

該当なし

ソースコードのスキャン、アンケートの回答、ドメインとアプリケーションの範囲を含めることを決定します。

ソースコード分析データを定性的な情報で強化するために使用される標準アンケートを 1 つ以上選択します。調査カテゴリは、「ビジネスインパクト」、「ソフトウェアメンテナンス作業」、「CloudReady」、「アプリケーションプロパティ」、「グリーンインパクト」です。キャンペーンに分析されたドメインとアプリケーションを選択します。 

重要

キャンペーンを開始する前に、必ず [Manage Applications] セクションに、スキャンするアプリケーションをすべて追加してください。

該当なし

起動メッセージをカスタマイズします。

キャンペーン内のアプリケーションに関連するすべてのコントリビューターにメールで送信されるリリースメッセージをカスタマイズします。

該当なし

キャンペーンを起動します。

[Complete] を選択してキャンペーンを開始します。

該当なし
タスク説明必要なスキル

CAST ハイライトローカルエージェントをダウンロードします。

CAST Highlight ポータルで [Application Scans] を選択し、ローカルエージェントをローカルのコンピュータにダウンロードします。

該当なし

ローカルエージェントをインストールします。

CASTHighlightSetup.exe インストールプログラムを起動し、表示されるセットアップ手順に従います。Local エージェントをインストールしたら、アプリケーションを分析する準備が整います。

該当なし

ローカルエージェントコードスキャンの範囲を定義します。

コード分析はファイルレベルで行われ、ファイル間の論理的なリンクや依存関係は考慮されません。すべてのファイルは同等でアプリケーションの一部とみなされます。 

正確で一貫性のある結果を得るには、ローカルエージェントで利用できるファイルまたはフォルダの除外特徴量を使用してコードスキャンの範囲を準備してください。

該当なし

オープンソースまたは COTS パッケージを含めてください。

(オプション) オープンソースまたは商用の既製 (COTS) パッケージを含める場合は、スキャンする予定のフォルダーにそれらが含まれていることを確認します。通常、外部ライブラリは「third-party」などのサブフォルダにグループ化され、メインコードは「src/main」ファイルフォルダに配置されることがよくあります。

該当なし

テストクラスは除外します。

テストクラスは通常、コンパイルされたアプリケーションの一部ではないため、ソースコードの分析から除外されます。ただし、必要に応じてスキャンに含めることもできます。

該当なし

SCM、ビルド、デプロイフォルダーは除外します。

より一貫した結果を得るには、スキャンに SCM フォルダー、ビルドフォルダー、デプロイフォルダー (.git ファイルや.svn ファイルなど) を含めないでください。

該当なし

依存関係ファイルを含めてください。

スキャンするフォルダーに物理ファイルが含まれていないフレームワークや依存関係について詳しく知りたい場合は、依存関係ファイル (pom.xml、build.gradle、package.json、.vcsproj ファイルなど) を必ず含めてください。

該当なし

ローカルエージェントを呼び出します。

ローカル Windows マシンでローカルエージェントを実行します。

該当なし

ソースコードを保存するフォルダを選択します。

ソースコードを保存するフォルダを選択します。ローカルエージェントが検出するフォルダを複数追加できます。ローカルエージェントはネットワークパスによるソース検出をサポートしていますが、ソースフォルダがローカルマシンにあることを確認する必要があります。 

重要

ソースフォルダに 10,000 個を超えるファイルがある場合は、複数回スキャンを実行することをお勧めします。

該当なし

ファイル検索を開始します。

ローカルエージェントダッシュボードで [Discover Files] を選択します。ローカルエージェントは、フォルダとサブフォルダ内のファイルを検出し、それらのテクノロジーを検出します。[Cancel] ボタンを選択すると、いつでも検出をキャンセルできます。 

ファイルの検出が完了すると、ローカルエージェントは見つかったフォルダとファイルを一覧表示します。[Technologies] 列には、関連するテクノロジーとファイル数が表示されます。[Path] 列には、フォルダとファイルの場所が表示されます。

該当なし

ソースコードのスキャン設定を調整します。

(オプション) ローカルエージェントスキャンを絞り込むには、特定のフォルダーまたはファイルの 1 つ以上のテクノロジーを無効にすることができます。すべてのテクノロジが非アクティブ化されると、フォルダまたはファイルはスキャンの範囲から除外されます。 

テクノロジーを無効にするには、無効にするテクノロジーの黄色いラベルを選択します。ファイルまたはフォルダーの上にカーソルを置いたときにフィルターアイコンを選択して、テクノロジーを特定のファイルまたはフォルダーに関連付けることもできます。これらの設定は保存され、フォルダやファイルの検索処理を迅速に行えます。

該当なし

ソースコードスキャンを開始します。

スキャンを設定したら、[Scan Files] を選択してスキャン処理を開始します。

該当なし

緑または灰色のラベルを確認します。

ソースコードのスキャンが完了すると、フォルダーレベルとファイルレベルでステータスラベルが表示されます。 

緑色のラベルは、関連する技術でファイルが正しくスキャンされたことを意味します。 

グレーのラベルは、ファイルがスキャンされておらず、除外されていることを意味します。除外された理由は、各ファイルのラベルにカーソルを合わせると表示されます。ファイルを除外する理由としては、バイナリファイル、読み取り不可能なファイル、見つからないファイル、外部ライブラリ、エンコードされたファイル、生成されたファイル、構文エラー、想定される言語ではないコンテンツ、十分な分析基準に準拠していないコード、サイズ制限 (10 MB) を超えるファイル、タイムアウトの問題、アナライザーが使用できないなどがあります。

該当なし

スキャン設定を変更し、コードを再スキャンします。

(オプション) スキャン設定を変更し、[Scan Files] を選択してファイルを再度スキャンできます。

該当なし

スキャン結果を確認します。

スキャン結果が要件を満たしている場合は、[Confirm Results] を選択します。

該当なし

ローカルエージェントによって検出されたフレームワークとソフトウェアライブラリを表示します。

アプリケーションで使用または参照され、コードスキャン中にローカルエージェントによって検出されたフレームワークとソフトウェアライブラリを表示します。 これらのリストの要素は、個別の切り替えボタンを選択することで、そのまま使用することも無視することもできます。 

[Confirm dependencies] を選択して続行します。

重要

フレームワークがオフになっていると、CAST Highlight ポータルには表示されず、アプリケーションにも添付されません。

該当なし

コードスキャン結果を保存します。

ローカルエージェントは、コードスキャン結果の概要をテクノロジーごとにまとめて表示します。[Save] を選択し、結果を保存するフォルダを指定します。ローカルエージェントは、スキャンごとにすべての分析結果を含む.zip ファイルを 1 つ生成します。 

ローカルエージェントは、異なるテクノロジーとルートソースフォルダの数に応じて、FolderName.Technology.Date.csv という命名構造を持つ 1 つまたは複数の .csv ファイルを自動的に生成します。

該当なし

コードスキャンファイルを CAST ハイライトポータルにアップロードします。

CAST Highlight ポータルの [Application Scans] セクションで分析したアプリケーションを選択します。[Upload Results] を選択し、.csv ファイルを選択します。.csv ファイルを個別にアップロードすることもできます。各ファイルがアップロードされると、アップロードの記録が画面に表示されます。

該当なし

必要に応じて分析結果ファイルを削除します。

(オプション) 分析結果ファイルは、アップロード処理中にゴミ箱アイコンを選択していつでも削除できます。 

重要

結果を削除できるのは、ポートフォリオマネージャー権限を持つユーザーまたは結果をアップロードした寄稿者のみです。

該当なし

アプリケーションアンケートに回答します。

アンケートが必要なアプリケーションには、[Survey] ボタンが表示されます。[Survey] を選択し、調査の各セクションの質問に回答し、終了したら [Submit] を選択します。 

アンケートの進行状況は画面の上部に表示されます。必須情報をすべて送信したら、結果を送信できます。ただし、すべての質問に回答することで、組織の CAST Highlight インスタンスのデータを充実させることができます。

該当なし

コードスキャン結果を送信します。

アプリケーションの .csv 結果ファイルをすべてアップロードし、アンケートの質問に回答したら、[Application Scans] セクションで [Submit] を選択します。このステップは、プロセスを完了し、結果が CAST Highlight ポータルに表示されるようにするために必要です。

該当なし
タスク説明必要なスキル

CAST ハイライトポータルのホームページをご覧ください。

CAST Highlight ポータルのホームページには、ソフトウェアヘルス、CloudReady、ポートフォリオ全体のオープンソース安全性スコアなど、アプリケーションポートフォリオに関する大まかな情報を含むタイルが含まれています。ホームページには、オンボードアプリケーションの数も表示されます。CAST ハイライト指標の定義と測定方法の詳細については、「CAST ハイライト — 指標と方法論 (Microsoft PowerPoint プレゼンテーション)」を参照してください。

該当なし

CloudReady ダッシュボードをご覧ください。

[CloudReady] タイルを選択して CloudReady のダッシュボードを開きます。これは、アプリケーションのクラウド対応状況を評価するための主要なポートフォリオレベルのダッシュボードです。クラウド移行のためのポートフォリオロードマップの計画と開発に役立ちます。

該当なし

クラウド向けポートフォリオアドバイザーダッシュボードをご覧ください。

Portfolio Advisor for Cloud ダッシュボードは、アプリケーションを自動的に推奨移行カテゴリに分類します。セグメンテーションは各アプリケーションの技術的特性に基づいています。要因には、ソースコード分析 (クラウドへの対応状況、ソフトウェアの耐障害性など) や、調査から得られたビジネスへの影響などがあります。右上の [Compute] を選択して、最初のセグメンテーション推奨事項を生成します。

ダッシュボード上部のグラフのバブルは、ポートフォリオ内の各アプリケーションを推奨セグメンテーション別にまとめたものです。各アプリケーションは、各アプリケーションの関連指標を含むグラフの下のデータ表にも一覧表示されています。

推奨できるセグメントには以下が含まれます。

  • リホスト — Infrastructure as a Service (IaaS) ソリューションを使用してアプリケーションをクラウドに移行するために、アプリケーションのインフラストラクチャ構成をリフトアンドシフトすることを推奨します。

  • リファクタリング — コンテナ・アズ・ア・サービス (CaaS) または Platform as a Service (PaaS) ソリューションを使用してアプリケーションを移行できるように、アーキテクチャや機能を変更せずにアプリケーション・コードを適度に変更することを推奨します。

  • リアーキテクト — アプリケーションの状態を改善するためにアプリケーションコードを大幅に変更し、PaaSソリューションを使用して移行の準備をするか、Function as a Service (FaaS) ソリューションを使用してサーバーレスアプリケーションとしてデプロイすることを推奨しています。

  • 再構築 — アプリケーションのコードを破棄して PaaS ソリューションを使用してクラウドで再開発するか、FaaS ソリューションを使用してサーバーレスアプリケーションとして再開発することを推奨しています。

  • 廃止 — アプリケーションを完全に廃棄するか、場合によっては市販の Software as a Service (SaaS) の代替品に置き換えることを推奨しています。

該当なし

セグメンテーションの推奨事項を変更。

場合によっては、CAST Highlightが推奨するセグメントを変更することもできます。これを行うには、データテーブルでアプリケーションを参照し、アプリケーション名の横にあるドロップダウンリストから別のセグメントを選択します。右上の [Save] を選択し、この変更を保存します。

このデータは、右上の [Export] を選択していつでもエクスポートできます。

該当なし

分析するアプリケーションを選択します。

Portfolio Advisor for Cloud ダッシュボードで、アプリケーションバブルを選択してそのアプリケーションを分析します。より詳細な分析を開始するには、バブルチャートの後の表でアプリケーションの名前を選択します。 

コードインサイト (ソフトウェアヘルスパターン)、トレンドソフトウェア構成 (オープンソースリスク) など、さまざまなダッシュボードを使用して個々のアプリケーションを分析できます。

該当なし

個々のアプリケーションの CloudReady の結果を分析します。

[CloudReady] タブを選択すると、アプリケーションの全体的な CloudReady スコアが表示されます。このスコアは、CloudReady アンケートへの回答と CloudReady コードスキャンの組み合わせに基づく加重平均です。アンケートの質問への回答は、タイルの下の表に表示されます。 

[CloudReady Code Scan] を選択すると、コードスキャンの結果が表示されます。アプリケーションコードがスキャンされた CloudReady パターンのリストがあります。リストには以下の列が含まれます。 

  • クラウド要件は特定のコードパターンです。 

  • テクノロジーはパターンのプログラミング言語です。「インパクト」とは、パターンがアプリケーションに及ぼす影響です (C = コード、F = フレームワーク、A = アーキテクチャ)。 

  • 重大度とは、移行前にこのパターンに対処することの重要性の程度のことです。 

  • 貢献度とは、このパターンが全体の CloudReady スコアにどの程度寄与するかということです。パターンが緑色の場合はブースターとなり、CloudReady スコアが上昇します。パターンが赤の場合は障害となり、CloudReady スコアが下がります。パターンに色が付いていない場合は、検出されなかったブロッカーであり、CloudReady スコアが上がります。 

  • ロードブロッカーとは、ブロッカーパターンが個別に出現する回数です。ロードブロック番号を選択すると、パターンが検出されたソースコードファイルのリストが表示されます。 

  • エスト。工数とは、各行の障害を解決するのにかかる推定日数です。

該当なし

Microsoft Excel にデータをエクスポートします。

(オプション) データをエクスポートしてさらに分析するには、[Export to Excel] を選択します。アプリケーション分析結果データを使用して、アプリケーションのクラウド対応状況をさらに分析し、移行前にどのコードを更新する必要があるかを判断できます。

該当なし

推奨事項の表示

[CloudReady Code Scan] の横にある [Recommendations] を選択すると、[Cloud Service Recommendations] 画面が表示されます。これにより、アプリケーションが採用できる AWS サービスをその特性に基づいて特定できます。

このステップを繰り返して、分析したすべてのアプリケーションの推奨事項を表示します。

該当なし

関連リソース

キャンペーン管理

ソースコード分析

その他のリソース