本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
大型主機應用程式的轉換
AWS Transform 可加速大型主機現代化應用程式的轉換。本主題說明可用的功能。
先決條件:在 S3 中準備專案輸入
AWS 轉換能夠處理複雜的大型主機程式碼庫。若要使用程式碼庫,請確定您的 S3 位置擁有所有資產。
關鍵專案輸入:
-
原始程式碼:您必須將大型主機原始程式碼檔案上傳至 S3。這包括 COBOL 程式、JCL 指令碼、複製手冊和任何其他相關的來源檔案。
-
資料檔案:如果您有大型主機應用程式使用的任何 VSAM 檔案或其他資料檔案,則需要將這些檔案上傳至 S3。
-
組態檔案:包含您大型主機環境特有的組態檔案。
其他專案輸入
系統管理設施 (SMF) 記錄:如果適用,請將 SMF 記錄上傳到存放原始碼的 S3 儲存貯體中的新資料夾,這些記錄應該是 .zip 檔案格式。
格式化:對於技術文件產生,您可以利用選用的組態檔案來產生符合所需格式和標準的 PDF 文件,包括標頭、頁尾、標誌和自訂資訊。
詞彙表: AWS Transform AWS Transform 利用自動化與生成式 AI 進行文件產生和業務規則擷取。在 zip 檔案的根目錄中包含包含重要縮寫和術語相關資訊的詞彙表 CSV 檔案,將有助於改善產生的文件品質。
測試資料:如果可用,請上傳可用於驗證現代化應用程式的測試資料集。此資料應存放在存放來源碼的 S3 儲存貯體中的新資料夾中。
您可以在此處找到專案輸入的詳細資訊。
登入並建立任務
若要登入 AWS 轉換 Web 體驗,請遵循文件 AWS 轉換入門區段中的所有指示。
若要建立和啟動任務:請遵循啟動專案中的步驟。
建立工作區:命名並描述將存放任務、協作者和相關聯成品的工作區。
建立任務:從預先設定的任務計畫中選取 以建立任務,或從支援的 功能清單中選取 以根據您的目標自訂任務計畫。
重要
AWS 如果您沒有適當的許可,轉換會拒絕您的操作。例如,參與者無法取消大型主機應用程式的任務轉換或刪除任務。只有管理員可以執行這些函數。
建立任務時,您可以從以下功能中選取 ,但啟動步驟始終是必要的,因為它是專案原始碼的位置。在工作區中設定的第一個任務中,您必須設定 Amazon S3 儲存貯體的連接器。
追蹤轉換進度
您可以透過兩種方式追蹤整個程序的轉型進度:
-
Worklog – 這提供 AWS Transform 所採取動作的詳細日誌,以及人工輸入請求,以及您對這些請求的回應。
-
儀表板 – 這可提供大型主機應用程式轉換的高階摘要。它顯示轉換的任務數量、套用的轉換,以及完成大型主機應用程式轉換的預估時間的指標。您也可以查看每個步驟的詳細資訊,包括各檔案類型的程式碼行、各檔案類型產生的文件、分解的程式碼,以及遷移計畫。
設定連接器
AWS 轉換會使用連接器來存取您帳戶中大型主機現代化函數所需的資源。連接器會自動設定您在工作區中執行的第一個任務。根據您選擇的任務計劃, AWS Transform 會引導您建立連接器。
大型主機重新構想連接器
大型主機重新構想連接器適用於執行評估和重新構想工作流程的任務。它使用 S3 儲存貯體來存取和存放轉換資源,以及使用 Amazon Neptune 叢集來存放擷取的成品。Neptune 叢集可做為統一的知識圖表,存放任務的所有擷取成品,而知識圖表會回答 AWS 轉換聊天介面中的所有問題。
在 VPC 中部署 Amazon Neptune 叢集,其中 AWS Transform 可以建立彈性網路介面 ENIs)。這些是允許 AWS Transform 安全地與 VPC 中的 Neptune 通訊的網路連線,以載入資料並查詢您的知識圖表。
AWS CloudFormation
建議使用下列 CloudFormation 範本來建立大型主機重新構想連接器所需的資源。執行 CloudFormation 範本時,請使用您計劃用於連接器的相同 S3 儲存貯體。如需使用 CloudFormation 範本的詳細資訊,請參閱使用範本。
若要下載 CloudFormation 範本,請選擇 neptune-kg-setup.yaml
範本接受下列參數:
BucketName – 必要。Neptune 大量載入器存取的 S3 儲存貯體名稱。您必須使用您計劃在 AWS 轉換連接器中使用的相同 S3 儲存貯體。
KmsKeyId – 選用。Neptune 加密的 KMS 金鑰。接受金鑰 ID、ARN、別名名稱或別名 ARN。如果省略,則預設為 AWS 受管金鑰。
當您設定連接器時,請提供下列詳細資訊:
S3 儲存貯體 ARN
Neptune 叢集 ARN
Neptune 叢集資源 ID
應用程式子網路 IDs
應用程式安全群組 ID
Neptune S3 大量載入器角色 ARN
重要
CloudFormation 範本的輸出索引標籤包含您在設定連接器時需要提供給 AWS Transform 的詳細資訊。
自訂組態
如果您偏好使用現有的 VPC 或其他工具來建立必要的基礎設施,您的環境必須符合下列要求:
Neptune 叢集
-
引擎版本 1.4.5.1 或更新版本的 Amazon Neptune Serverless
IAM 身分驗證已啟用
啟用儲存加密 (AWS 受管金鑰或客戶受管 KMS 金鑰)
無伺服器擴展組態 (建議:1–128 NCUs)
(建議) 第二個可用區域中的僅供讀取複本,可提供高可用性並改善讀取效能
聯網
啟用 DNS 支援和 DNS 主機名稱的 VPC
不同可用區域中至少有兩個子網路。 AWS Transform 會在這些子網路中建立 ENIs,以存取 Neptune 叢集,而 Neptune 叢集可以位於相同的子網路或專用子網路中。將子網路大小調整為 /20,以容納 VPC 端點和應用程式 ENIs。
-
透過 VPC 介面端點 (AWS PrivateLink) 從子網路到下列 AWS 服務的網路連線:
AWS Transform Agents API – 協調大型主機現代化任務
Amazon Bedrock 執行期 – 調用基礎模型進行分析和推理
Amazon Relational Database Service (Amazon RDS) – Neptune 叢集管理
Amazon Elastic Compute Cloud (Amazon EC2) – ENIs的管理
Amazon CloudWatch – AWS 轉換可觀測性的指標
連接至與子網路相關聯路由表的 S3 閘道端點。 AWS Transform 使用此端點將資料從 S3 儲存貯體載入 Neptune 叢集。
Security groups (安全群組)
安全群組會連接到 ENIs,而非子網路。即使 AWS 轉換 ENIs和 Neptune 位於相同的子網路中,個別的安全群組也會控制它們之間的存取。
-
安全群組 (連接至 AWS Transform 建立ENIs),允許:
將 TCP 8182 傳出至 Neptune 安全群組
用於連接 VPC 端點的傳出 TCP 443
-
安全群組 (連接至 Neptune 叢集),允許:
從應用程式安全群組傳入 TCP 8182
-
VPC 端點安全群組 (連接至介面端點 ENIs),允許:
從應用程式安全群組傳入 TCP 443
IAM
具有 信任政策的 IAM 角色
rds.amazonaws.com,可授予 S3 儲存貯體s3:GetBucketLocation上的s3:ListBucket、s3:GetObject和此角色必須與 Neptune 叢集相關聯,才能大量載入知識圖表資料
下圖顯示建議的架構。
S3 連接器
對於具有自訂計劃的任務, AWS Transform 可以使用 S3 連接器。S3 連接器使用 S3 儲存貯體來存取和存放轉換資源,以及用於索引輸出的 S3 向量儲存貯體。
重要
您的資料會儲存在工作區的 AWS 轉換成品存放區中,並僅用於執行任務。
S3 向量儲存貯體的選用組態。
在可使用 S3 向量儲存貯體的區域中, AWS Transform 會將任務輸出的可搜尋向量編碼存放在您的帳戶中的此 S3 向量儲存貯體中,以提供 AI 支援的搜尋和聊天體驗。資料不會用於此任務之外,也不會用於訓練模型。若要啟用此功能,您必須建立並提供 S3 向量儲存貯體。 AWS Transform 會自動建立並連接具有寫入此儲存貯體所需許可的角色。
S3 儲存貯體 CORS 許可
設定連接器後,請將下列 CORS 政策新增至 S3 儲存貯體,以便您可以直接在 AWS 轉換主控台中檢視和比較成品。如果未正確設定此政策,則可能無法使用 AWS 轉換的內嵌檢視或檔案比較功能。
[ { "AllowedHeaders": [], "AllowedMethods": [ "GET" ], "AllowedOrigins": [ "https://*.transform.eu-central-1.on.aws", "https://*.transform.ap-south-1.on.aws", "https://*.transform.ap-northeast-1.on.aws", "https://*.transform.ap-northeast-2.on.aws", "https://*.transform.ap-southeast-2.on.aws", "https://*.transform.ca-central-1.on.aws", "https://*.transform.eu-west-2.on.aws", "https://*.transform.us-east-1.on.aws", "https://*.transform.sa-east-1.on.aws" ], "ExposeHeaders": [], "MaxAgeSeconds": 0 } ]
評估和重新構想任務計畫
評估和重新構想任務計畫是用於現代化大型主機應用程式的預先定義工作流程。它會引導您完成兩個階段:評估您的程式碼庫以識別業務函數,並重新構想您選取的函數。若要改為選擇個別功能,請使用自訂任務計劃。
評估
大型主機現代化旅程通常從評估程式碼庫開始,以識別內容並了解關係和相依性。在此評估之後,您可以開始分解並選取要現代化之來源碼的部分。分解的界限取決於業務職能。
商業函數目錄會將您的程式碼庫分解為離散的商業函數,這些函數是以決定性資料路徑為基礎,從頭到尾映射每個商業函數。資料路徑是資料需要的路由,從業務觸發到大型主機程式碼中的最終寫入。系統不會將分析限制為單一進入點,而是跨越批次任務、CICS 交易及其共用資料存放區,以識別一致的業務工作單位。
業務職能是從業務觸發條件開始,並以可衡量的業務成果結束的工作內文。 AWS Transform 提供業務線可以採取動作的業務職能目錄,讓企業能夠先做出有關要現代化項目的明智決策。
使用商業函數評估程式碼庫以現代化的優勢:
全方位可見性 – 了解批次任務、線上交易和資料存放區如何為您的業務連接到有意義的 函數。
可行界限 – 每個已識別的業務職能都是獨立的單位,您的line-of-business利益相關者可以檢閱並排定現代化工作的優先順序。
從程式碼到規格的一致性 – 定義商業函數的相同程式碼區塊用於產生其規格,無需翻譯層,也不需要調校。
縮短探索時間 – 自動化偵測以系統化、可重複的分析取代幾個月的手動部落知識訪談。
透過聊天提供的評估結果
透過聊天提供的評估結果包括業務職能清單,包括資料路徑的數量、每個職能在批次和 CICS 交易方面的範圍,以及業務描述。您會收到在 Amazon S3 儲存貯體中產生成品的連結,您也可以透過聊天存取這些成品。提供兩種成品:業務職能詳細資訊和業務職能摘要。
商業函數摘要 – 提供商業函數的清單,以及程式碼中元素正在執行之函數的自然語言描述。
商業函數詳細資訊 – 提供互動式圖形,描述來源碼之間的關係。
若要與圖形互動,請選取 元素以顯示其其他詳細資訊,或開啟 元素來查詢其詳細資訊。在每個頁面中,都有該層級的所有元素摘要,以及要與 互動並進一步了解每個元件的圖形界面,包括下列項目:
-
業務職能 – 描述哪些業務職能互相連接,並提供每個業務職能的概觀。當您選取業務函數時,會提供下列資訊:
資料路徑的數量
程式碼的行數
業務描述:業務功能的概觀,以自然語言描述程式碼中的元素正在執行哪些功能。
介面:詳細說明業務職能中的資料元素的關聯方式 (例如交換或寫入)。
-
業務職能詳細資訊 – 描述單一業務職能中跨資料路徑的連線,可讓您深入了解業務職能的組成。當您選取 元素時,您會看到該元素如何跨業務函數連線,以及下列詳細資訊:
資料存放區:資料存放區的寫入器和讀取器。
其他元素:相關資料路徑的概觀,以自然語言描述資料路徑中處理的動作和結果、程式清單,以及讀者和寫入者。
-
資料路徑 – 描述一個資料路徑的詳細資訊,以及資料路徑中的元素彼此之間的關聯。
描述:資料路徑的概觀,以自然語言描述資料路徑中處理的動作和結果。
-
資料路徑的內容:
進入點
讀取
寫入
程式
透過聊天,您可以查詢輸出以了解每個業務職能中包含的元素,並透過業務職能圖表探索界限。
在您識別現代化邊界之後,聊天會提示您選取要重新構想的業務函數。您可以選擇單一業務職能或多個業務職能。 AWS Transform 會將選取的界限和必要的評估輸出傳送至重新構想流程,以繼續現代化旅程。
完成第一次現代化後,您可以使用聊天功能選取要現代化的額外商業功能集。
重新構想
在重新構想階段,您可以選擇評估識別的一或多個業務職能,並準備進行現代化。這會觸發業務邏輯擷取,然後為選取的業務函數產生需求。產生的要求是轉送工程的主要輸入,將傳統系統理解轉換為現代化應用程式必須提供的精確規格。
擷取商業邏輯
選取一或多個業務職能之後, AWS Transform 會開始為選取的業務職能產生業務邏輯。擷取完成後, AWS Transform 會將結果以 JSON 格式存放在 Amazon S3 儲存貯體中,以供下游使用。您可以監控擷取進度,並直接在 AWS 轉換主控台中檢閱任何問題。
檢閱商業邏輯擷取結果
-
在左側導覽窗格中,選擇擷取業務邏輯步驟將其展開。
-
從步驟詳細資訊中檢視下列項目:
S3 儲存貯體連結:擷取的業務邏輯結果以 JSON 格式儲存的位置。
問題:業務邏輯擷取程序期間遇到的任何問題清單。
如果在擷取期間遇到任何檔案問題,每個受影響的檔案會顯示下列詳細資訊:
檔案名稱:遇到問題的檔案名稱。
檔案類型:檔案類型 (例如 COBOL 或 JCL)。
檔案路徑:應用程式內檔案的位置。
狀態:檔案擷取的目前狀態。
詳細資訊:所遇到問題的描述。
注意
擷取步驟完成後, AWS Transform 會自動開始產生需求。在此程序開始之前,不會提示您輸入任何其他輸入。
產生需求
業務邏輯擷取完成後,產生需求代理程式會使用擷取的成品 (程式碼分析、資料分析、業務規則),並產生現代化需求。這些要求是與技術無關的正式功能規格,並包含可測試的接受條件。 AWS Transform 會為您選取的每個業務函數產生一個requirements.md檔案,並將輸出存放在 Amazon S3 儲存貯體中。若要檢視輸出的 Amazon S3 位置,請選擇產生需求步驟。
每個requirements.md檔案會組織為下列部分:
-
標題 – 為業務函數及其代表的工作流程命名。
-
全域先決條件 – 在處理之前和期間在整個工作流程中必須保持 true 的條件。可設定的值會顯示為參數預留位置。
-
已編號的工作流程區段 – 每個區段代表業務職能的分散階段。每個區段都包含下列項目:
將目標陳述為角色、該角色想要採取的動作,以及結果的使用者案例。
EARS (Easy Approach to Requirements Syntax) 格式中的需求清單,每個格式都有唯一的識別符。
注意
選取第二組商業函數會重新啟動新選取函數的重新構想步驟。然後,主控台只會顯示新選擇的結果,因此不會再顯示先前業務職能中業務規則的任何問題,以及存放業務邏輯和要求的輸出的 Amazon S3 連結。您先前的輸出不會遺失。您仍然可以從成品索引標籤或 Amazon S3 儲存貯體中存取它們。
轉換成品之間的可追蹤性
AWS 轉換可在整個評估和重新構想工作流程中產生的成品之間維持可追蹤性。可追蹤性可讓您追蹤每個需求到解壓縮的業務規則,或直接追蹤到產生要求的原始原始原始原始程式碼。
您可以使用 traceability.yaml 檔案來檢視每個業務職能的所有可追蹤性詳細資訊。它描述了每個業務規則如何映射到要求。
如需互動式可追蹤性,您可以在 VS Code 和 Open VSX 相容編輯器中使用 IDE 外掛程式。如需詳細資訊,請參閱開發人員工具。
重新構想任務計畫
對於您已為現代化設定範圍且已準備好重新構想的應用程式,您可以執行獨立的重新構想任務。任務會分析您的程式碼和資料、擷取商業邏輯、識別商業網域,以及為每個商業網域產生現代化需求。
自訂任務計畫
自訂任務計畫可讓您選取要執行的功能,以建置自己的現代化工作流程。它可讓您完全控制包含哪些功能。根據您的現代化目標,從下列功能中進行選擇。有些功能取決於先執行的其他功能。例如,大多數其他功能都需要程式碼分析。
分析程式碼
與 AWS Transform 共用 Amazon S3 儲存貯體路徑後,它會分析每個檔案的程式碼,其中包含檔案名稱、檔案類型、程式碼行及其路徑等詳細資訊。
注意
您可以透過任務或工作區層級的成品索引標籤下載分析程式碼結果。在任務層級前往左側導覽選單中的「Artifacts」選項,開啟「結果」資料夾,或在工作區層級尋找任務名稱,並開啟「結果」資料夾。這將下載 zip 檔案,其中包含手動分類工作流程的分類檔案、資產清單、相依性 JSON 檔案,以及遺失檔案的清單。
在任務計畫中,選取左側導覽窗格中的分析程式碼以檢視結果。您可以透過多種方式檢視程式碼分析結果:
-
清單檢視 – 您要為大型主機轉換的 Amazon S3 儲存貯體中的所有檔案
-
檔案類型檢視 – Amazon S3 儲存貯體中每個檔案類型顯示的所有檔案。如需支援的檔案類型清單,請參閱支援的檔案。
-
資料夾檢視 – 在資料夾結構中顯示的 Amazon S3 儲存貯體中的所有檔案。
在檔案結果中, AWS Transform 會根據您選擇的檔案檢視提供下列資訊:
-
名稱
-
檔案類型
-
程式碼總行數
-
檔案路徑
-
註解行
-
空行
-
有效的程式碼行
-
檔案數目
-
Cyclomatic Complexity - Cyclomatic complexity 代表透過程式原始碼的線性獨立路徑數量。 AWS Transform 會顯示每個檔案的週期複雜性。
遺失檔案 – 大型主機現代化程式碼分析中遺失的檔案。理想情況下,這些檔案應新增為 Amazon S3 儲存貯體中來源輸入的一部分,且分析步驟應重新執行,以獲得更佳且一致的結果。
同名 – AWS Transform 提供您共用相同名稱的檔案清單,以及可能相同的特性 (例如程式碼行數)。它將無法一次比較任何兩個檔案的內容之間的差異。
重複IDs – 使用 Cobol 程式時,程式 ID 欄位可做為檔案的唯一識別符。此 ID 必須是唯一的,因為它用於在整個專案中呼叫程式。不過,有些專案可能有不同名稱但程式 ID 相同的 COBOL 檔案。在評估期間取得這些檔案的清單,有助於了解所有程式之間的相依性。
注意
這是 COBOL 程式碼和檔案特有的。
當您的程式具有重複IDs 時,建議您變更這些檔案的程式 IDs,以擁有 COBOL 程式碼中每個檔案的唯一識別符。然後,您可以重新執行任務,以取得更準確且全面的程式碼分析結果。
透過解決重複IDs,您可以:
-
改善程式碼清晰度和可維護性
-
減少程式呼叫中的潛在衝突
-
提升相依性映射的準確性
-
簡化未來的現代化工作
Codebase 問題 – 在程式碼庫中偵測到的潛在問題,您應該先解決這些問題,然後再繼續現代化專案。這些問題可能包括缺少與程式碼中相關聯陳述式或不支援連結的參考。
更新分類 – 透過手動重新分類,您可以透過上傳具有新分類的 JSON 檔案,使用大量更新功能重新分類檔案。
重要
這僅適用於 UNKNOWN和 TXT 檔案。
重新分類後, AWS Transform 將:
-
更新分類結果
-
使用新的檔案類型重新執行相依性分析
-
重新整理所有受影響的分析結果
注意
您只能在初始分析迴圈完成後重新分類檔案。
內嵌檢視器和檔案比較
內嵌檢視器是大型主機 AWS 轉換功能中的一項功能,可提供兩個關鍵視覺化功能:
-
檔案檢視:從任務檢視所選舊版檔案的內容
-
檔案比較:side-by-side比較兩個舊版檔案的內容
輸入檔案檢視
若要在分析程式碼步驟中檢視您的檔案
-
在檢視程式碼分析結果下,使用清單中的核取方塊選取檔案。
選擇檢視動作按鈕 (選取 1 個項目時啟用)。
檔案內容會在檔案檢視元件的畫面上呈現。
檔案比較
若要比較分析程式碼步驟中的檔案
-
在檢視程式碼分析結果下,使用清單中的核取方塊選取兩個檔案。
-
選擇比較動作按鈕 (僅在選取 2 個項目時啟用)。
-
檔案將在檔案比較元件中side-by-side顯示。
注意
您無法選取兩個以上的檔案來比較檔案。
重要
如果內嵌檢視器或檔案比較發生問題,請確定 S3 儲存貯體已正確設定。如需 S3 儲存貯體 CORS 政策的詳細資訊,請參閱 S3 儲存貯體 CORS 許可。
資料分析
AWS 轉換提供資料分析,以協助了解資料關係和元素對大型主機現代化專案的影響。提供的兩個輸出為:
資料歷程:透過映射資料來源、任務和程式之間的關係,追蹤資料生命週期
資料字典:做為記錄舊版資料元素結構中繼資料的儲存庫
完成分析時,每個輸出都會有兩個索引標籤,然後針對資料歷程和字典提供以下所述的多個檢視。
注意
當您請求資料分析時, AWS Transform 會執行程式碼分析,這是執行資料分析的必要項目。
資料沿襲
AWS 轉換會根據需要跨要現代化之程式碼庫了解的資料關係,提供多個檢視。資料譜系中可用的四個資料表檢視包括:
-
資料集:此檢視提供全面的影響分析,包括操作追蹤,以協助區分讀取、寫入、更新和刪除
-
Db2 資料表:提供與 Db2 資料表和操作相關的影響分析
-
Program-to-data:識別哪些 COBOL 程式參考每個資料集
-
JCL-to-data的關係:識別哪些 JCL 指令碼參考每個資料集
摘要提供資料來源的概觀,以及其與程式和 JCLs的關係,以及有關如何利用資料來源的摘要資訊,以及在程式碼庫中找到的總操作。
資料字典
了解程式碼庫中存在之資料來源內的資料元素,是了解各種資料來源如何相依的下一個步驟。資料字典是一種資料目錄,提供具有商業語言描述的欄位層級中繼資料,以準確進行轉換映射。
-
COBOL 資料結構:跨代碼庫中存在的 COBOL 複本和 INLINE 參考提供欄位資訊,包括欄位屬性和業務定義
-
Db2 資料表:跨程式碼庫中存在的 Db2 資料表提供資料欄和資料表屬性,包括主索引鍵和外部索引鍵、結構描述和索引資訊,以及資料類型
選取資料來源,然後利用資料歷程或資料字典按鈕,以深入了解資料來源與資料元素之間的關係,即可取得資料歷程與字典之間的關係。資料譜系和字典之間的導覽提供整合的資料可見性與資料譜系,提供「什麼」 - 結構和意義,以及「哪裡」 - 用量和關係。
活動指標分析
活動指標分析可讓您分析類型 14、15、30、64、102 和 110 的系統管理設施 (SMF) 記錄。此分析可讓您深入了解如何在大型主機應用程式中使用 元素。它可協助淘汰未使用的程式碼,或決定現代化應用程式的目標架構。如果您在任務中包含活動指標分析,完成程式碼分析步驟會先提供更豐富的 SMF 輸出,但這不是必要的。
注意
當您協商大型主機現代化的任務計畫時,完成程式碼分析和分解步驟會先提供更豐富的輸出。
加入 SMF 記錄進行分析
您必須在 Amazon S3 儲存貯體中提供 SMF 記錄位置,做為 SMF 分析的初始步驟。提供至少 13 個月的記錄,以擷取較短時間範圍可能遺漏的年度事件。雖然建議使用 13 個月,但任何具有可偵測 SMF 記錄的時間範圍都會產生分析結果。
您的 SMF 擷取必須符合下列格式要求:
包括類型 14、15、30 (子類型 5)、64、102 和 110。
使用 EBCDIC 格式的原始二進位檔案。
包含 RDW 位元組。
提供 Amazon S3 儲存貯體中 SMF 記錄的連結,確保記錄位於與原始程式碼分開的資料夾中。格式選項包括壓縮的 .zip (最多 600 MB) 或 .tar.gz (最多 5 GB)。如果您提供未偵測到 SMF 記錄的資料夾連結,您會收到錯誤訊息,而且沒有完成分析。
分析輸出
分析輸出包含兩個元件,取決於記錄類型:表格式檢視和 .csv 輸出 (可在 Amazon S3 儲存貯體中使用)。在 AWS 轉換中,顯示類型 30 和 110 的輸出。透過 Amazon S3 儲存貯體中的成品,您可以探索其他記錄類型的分析。在使用者介面中, 標頭會顯示所提供記錄的時間範圍,讓您可以識別任何遺失的金鑰日期。例如,如果您的記錄跨越 5 月 1 日至 10 月 31 日,但不包括感恩節後的忙碌一天,您可以看到金鑰記錄遺失。Web 應用程式中的時間戳記會反映系統的時區和 SMF 記錄。
Amazon S3 中可用的成品可提供所提供記錄中任何記錄類型的分析。
表格式檢視
表格式檢視僅適用於 SMF 30 和 110,包含批次任務和 CICS 交易最多三個主要元件:
摘要 – 提供關鍵任務和交易。
批次任務/CICS 交易分析 – 提供跨任務和交易的彙總分析。
程式碼分析比較 (僅限批次) – 在 SMF 分析之前執行程式碼分析步驟時提供比較資料。
探索摘要提供三個任務和交易群組,可協助您快速識別項目以進行更深入的分析。
批次任務和 CICS 交易分析提供跨任務和交易的彙總分析。分析結果中的某些資料欄預設為隱藏。選擇齒輪圖示以顯示其他欄位。
交易金鑰會為 CICS 交易產生唯一的資料彙總,將四個欄位合併為單一金鑰值:
交易 ID
程式名稱
SysPlex ID
SysID
您可以依完整索引鍵或依分析輸出中索引鍵的任何元件進行搜尋。
程式碼分析比較會反白顯示 SMF 記錄或分析程式碼步驟中找到的任務,但不會同時出現在兩者中。這會顯示在您的 SMF 記錄時間範圍內未執行或不存在於分析程式碼步驟的任務。只有當您在任務中的 SMF 分析之前執行程式碼分析步驟時,才能使用此輸出。
最佳實務
若要取得批次任務的完整輸出 (類型 30),請確定您的 JCL 檔案名稱符合任務名稱,以在程式碼分析比較中取得有意義的輸出。
產生技術文件
您可以為正在進行現代化的大型主機應用程式產生技術文件。透過分析程式碼, AWS Transform 可以自動建立應用程式的詳細文件,包括舊版系統中存在的程式邏輯、流程、整合和相依性的描述。本文件功能有助於彌補知識差距,讓您在將應用程式轉換為現代雲端架構時做出明智的決策。
注意
當您請求產生技術文件時, AWS Transform 會執行程式碼分析,包括程式碼相依性分析,這是產生文件所需的。
產生技術文件
-
在左側導覽窗格的產生技術文件下,選擇選取檔案並設定設定。
-
選取您要為其產生文件的 Amazon S3 儲存貯體中的檔案,然後在協作索引標籤中設定設定。
注意
選取的檔案應具有相同的編碼類型 (亦即,全部位於相同的 CCSID - UTF8 或 ASCII 中)。否則,產生的技術文件可能會有空白欄位或區段。
-
選擇文件詳細資訊層級:
-
摘要 – 提供範圍內每個檔案的高階概觀。此外, 會提供每個檔案的單行摘要。
-
詳細功能規格 – 提供大型主機應用程式轉換範圍內每個檔案的完整詳細資訊。有些詳細資訊包括邏輯和流程、相依性、輸入和輸出處理,以及各種交易詳細資訊。
注意
只能為 COBOL 和 JCL 檔案產生文件。
-
-
選擇繼續。
-
一旦 AWS 轉換產生文件,請遵循 主控台中產生和儲存結果的 Amazon S3 儲存貯體路徑來檢閱文件結果。
-
產生文件後,您也可以使用 AWS 轉換聊天來詢問有關所產生文件的問題,並決定後續步驟。
將使用者資訊新增至文件
ARTIFACT_ID.zip └── app/ ├── File1.CBL ├── File2.JCL ├── subFolder/ │ └ File3.CBL └── glossary.csv └── pdf_config.json ├── header-logo.png ├── footer-logo.png └ ...
選用檔案可以新增到 zip 檔案中,以協助改善產生的文件品質,並提供自訂的 PDF 封面。其中一些可以是:
-
glossary.csv 檔案:您可以選擇在 S3 儲存貯體的 zip 檔案中提供和上傳選用的詞彙表。詞彙表採用 CSV 格式。此詞彙表有助於根據客戶詞彙建立具有相關描述的文件。範例
glossary.csv檔案看起來像:LOL,Laugh out loud ASAP,As soon as possible WIP,Work in progress SWOT,"Strengths, Weaknesses, Opportunities and Threats" -
pdf_config.json:您可以利用此選用組態檔案來產生符合其公司格式和標準的 PDF 文件,包括標頭、頁尾、標誌和自訂資訊。範例
pdf_config.json看起來像:{ "header": { "text": "Acme Corporation Documentation", "logo": "header-logo.png" }, "customSection": { "variables": [ { "key": "business Unit", "value": "XYZ" }, { "key": "application Name", "value": "ABC" }, { "key": "xxxxxxxxxx", "value": "yyyyyyyyyyyy" }, { "key": "urls", "value": [ { "text": "Product Intranet Site", "url": "https://example.com/intranet" }, { "text": "Compliance Policies", "url": "https://example.com/policies" } ] } ] }, "footer": { "text": "This document is intended for internal use only. Do not distribute without permission.", "logo": "footer-logo.png", "pageNumber": true } }-
標頭:
-
對於封面 PDF 檔案,預設文字將是專案名稱。
-
對於每個程式 PDF 檔案,預設文字將是程式名稱。
-
沒有預設標誌。如果未設定標頭標誌,則不會顯示任何標誌。
-
字型大小和標誌大小應根據單字數或標誌檔案大小動態變更。
-
-
自訂區段:
-
如果未設定自訂區段,則會從 PDF 中省略它。
-
連結必須能夠按一下。
-
-
頁尾:
-
頁尾沒有預設的文字或標誌。
-
除非另有明確設定,否則頁面號碼預設會顯示在頁尾中。
-
字型大小和標誌大小應根據單字數或標誌檔案大小動態變更。
-
-
產生文件內嵌檢視器
您可以在產生技術文件步驟中檢視 PDF 檔案。
檢視 PDF 檔案
-
導覽至檢閱文件結果索引標籤。
-
在列出產生的 PDF 的資料表中找到 PDFs。
-
選取 rile,然後選取檢視或選取覆蓋在檔案名稱上的連結元素。
PDF 會在 AWS 轉換中開啟,並可選擇展開右上角的畫面。
注意
AWS 轉換也可讓您下載所產生技術文件的 PDF 版本 XML。
重要
如果文件內嵌檢視器發生問題,請確定 S3 儲存貯體已正確設定。如需 S3 儲存貯體 CORS 政策的詳細資訊,請參閱 S3 儲存貯體 CORS 許可。
擷取商業邏輯
您可以從正在進行現代化的大型主機應用程式中擷取基本業務邏輯。 AWS Transform 會自動分析您的程式碼,以識別和記錄關鍵業務元素,包括詳細程序流程,以及內嵌在應用程式中的業務邏輯。此功能可在現代化旅程中為多個利益相關者提供服務。業務分析師可以利用擷取的邏輯來建立精確的業務需求,並識別目前實作中的差距或不一致。開發人員無需廣泛的大型主機專業知識,就能快速了解複雜的舊版系統功能。
注意
當您請求業務邏輯擷取時。 AWS Transform 會執行程式碼分析,包括程式碼相依性和進入點分析,這些分析是執行業務邏輯擷取所需的。
擷取商業邏輯
-
在左側導覽窗格的擷取商業邏輯下,選擇設定設定。
-
在協同合作索引標籤中,選取您要如何擷取商業邏輯:
應用程式層級:產生所有業務職能、交易、批次任務和檔案的業務文件。這會選取應用程式中的所有檔案。
-
檔案層級:僅針對您從檔案資料表中選取的檔案產生商業文件。
注意
對於任一選項,您可以選取包含詳細的功能規格,以便 AWS 轉換包含所選檔案的控制流程和全面的業務規則。
選取的檔案應具有相同的編碼類型 (亦即,全部都在相同的 CCSID - UTF8 或 ASCII 中)。否則,產生的文件可能會有空白欄位或區段。
-
只能為 COBOL 和 JCL 檔案產生文件。
-
對於應用程式層級,CICS 交易和批次任務所使用的程式會分組在一起,而所有其他程式則會分類為未指派。
-
選擇繼續。
-
一旦 AWS 轉換擷取商業邏輯,它會以 JSON 格式將結果存放在 Amazon S3 儲存貯體中,以便您可以線上檢視。
注意
產生的業務規則檔案數目可能大於您的初始選擇。某些選取的檔案可能會觸發業務規則擷取,以包含其他相依檔案,這些檔案也會出現在結果表格中。
內嵌檢視擷取的業務文件
您可以在擷取業務規則步驟中檢視業務邏輯。若要這樣做,
-
導覽至檢閱業務邏輯擷取結果。
-
從資料表中選取您要檢視的文件,然後按一下檢視結果按鈕。
商業文件頁面會在新的瀏覽器索引標籤中開啟。
分解
您可以將程式碼分解為考量程式和元件之間相依性的網域。這有助於相關檔案和程式在相同網域中適當分組。它也有助於在分解過程中維護應用程式邏輯的完整性。
注意
當您請求分解時, AWS Transform 會執行程式碼分析,包括執行分解所需的程式碼相依性分析。我們也建議您在分解之前執行商業邏輯擷取,以獲得更好的結果。
若要開始分解您的應用程式:
-
從左側導覽窗格中選取分解程式碼。
注意
系統會自動為與網域無關的所有檔案建立未指派的網域。在初始導覽時,所有檔案都應與未指派相關聯,除非從應用程式層級商業邏輯擷取提出網域。
-
透過動作功能表建立新網域,然後選擇建立網域。
-
在建立網域中,提供網域名稱、選用描述,並將某些檔案標記為種子。
-
CICS 設定檔案 (CSD) 和排程器設定檔案 (SCL) 可用於自動種子偵測。
-
您也可以將一個網域設定為常見元件。此網域中的檔案常見於多個網域。
-
-
選擇建立。
注意
您可以建立多個網域,並以不同的檔案做為種子。
-
確認所有網域和種子之後,請選擇分解。
-
AWS 轉換會檢查原始程式碼檔案,然後使用具有類似使用案例和高程式設計相依性的程式和資料集分解為網域。
AWS 轉換可讓您以表格式和圖形檢視分解的網域做為相依性。圖形檢視有三個選項:
-
網域檢視 – 可以檢視不同的網域如何以視覺化格式相互關聯。
-
相依性檢視 – 可以將每個網域中的所有檔案檢視為複雜的相依性圖表。如果新增至網域的節點未從相同網域中的種子接收資訊,則此節點會預測為未指派 (節點未接收任何資訊)、中斷連線 (子圖表中未接收種子資訊) 或另一個網域 (節點至少從該網域接收資訊)。
-
子圖檢視 - 使用者可以建立子圖以視覺化節點子集,以更清楚地了解節點集合的關係影響和界限。
-
若要建立子圖,請選取一組節點,然後從工具列中選取擷取子圖選項
-
除了您要合併的兩個子圖之外,還建立合併新的第三個子圖時,可以使用合併子圖。
-
注意
如果您不喜歡目前的網域結構,請重複這些步驟來新增更多網域,或重新設定已使用不同種子集建立的網域。
-
-
完成後,選擇繼續。
種子
種子是分解程式碼階段的基礎輸入。每個元件或檔案 (例如 JCL、COBOL、Db2 資料表、CSD 和排程器檔案) 只能指派為一個網域的種子,以確保分解程序期間的邊界清晰且一致性。
種子的識別取決於應用程式或產品組合的結構。在典型大型主機舊版應用程式中,種子通常可以透過遵守已建立的命名慣例、排程器中的批次層級分組,以及 CICS 系統中定義的交易層級分組來確定。此外,資料庫資料表也可以做為種子,為分解提供另一層結構。
匯入和/或更新相依性檔案
在分解期間,您可以上傳相依性的 JSON 檔案,以取代 AWS Transform 執行的相依性分析所產生的現有檔案。
匯出相依性函數可讓您下載分解步驟中產生的相依性 json 檔案。下載之後,您可以根據您的需求修改檔案。然後,您可以使用 AWS 轉換的上傳功能匯入相依性,這可讓您上傳相依性的新 JSON 檔案,以取代相依性分析產生的檔案。之後,分解步驟中的圖形將會更新。
匯出、修改和匯入相依性
-
在檢視分解結果頁面上,選擇動作。
-
在下拉式清單中,選擇其他動作下的更新相依性檔案選項。
-
在更新相依性檔案模態中,
-
下載從現有分析結果建立的相依性檔案 AWS 轉換。
-
在下載的檔案中,根據您想要達成的目標修改相依性。
-
修改後,使用上傳相依性檔案按鈕儲存和上傳此檔案。
注意
唯一接受的檔案格式是 JSON 檔案。
-
-
接著,選擇匯入。
AWS 轉換會匯入相依性檔案,並根據您的輸入建立新的相依性圖表。
匯入和/或更新網域
對於在分解步驟之前映射網域、種子和/或檔案關係的客戶,您可以透過動作功能表提供的匯入網域檔案函數上傳此網域定義。可以使用此函數的一些範例:
-
從另一個任務引入轉送分解
-
提供此映射的主題專家
匯入網域檔案後,使用者可以對網域定義執行分解,如果滿足,則可以儲存然後提交網域定義。
Parent/child/neighbor檔案
在相依性圖表中,程式透過不同類型的連線彼此關聯。了解這些關係可協助您在大型主機應用程式的轉換期間分析程式相依性。它也有助於了解網域的邊界。例如,如果您選取網域,然後選取父層級,則會顯示連接的節點。
父系關係 – 父系檔案呼叫或控制其他程式。父系位於階層中其相依程式的上方。您可以在一個層級或所有層級選取父系。
子系關係 – 子系檔案由父系程式呼叫或控制。子系位於檔案階層中父系下方。
鄰關係 – 鄰是相同階層層級的檔案。他們共用相同的父系程式,並且可能會直接彼此互動。
重新建構程式碼
Reforge 使用大型語言模型 (LLMs) 來改善重構程式碼的品質。初始 COBOL-to-Java 轉換會保留功能等效性,同時保留舊版系統中 COBOL 影響的資料結構和變數名稱。Reforge 會重組此程式碼,以遵循現代 Java 實務和模式,將 COBOL 樣式的建構取代為原生 Java 集合和命名慣例。這可讓 Java 開發人員更易於讀取和維護程式碼。
注意
重新建構的配額為:
每個任務 3,000,000 行程式碼
每位使用者每月 50,000,000 行程式碼
請依照下列步驟,在重構後重新強化程式碼:
在左側導覽窗格中選擇重新編碼 Java 程式碼,然後選取設定程式碼重新編碼。
將 S3 位置提供給壓縮的可建置來源專案,然後選擇繼續。使用此 zip 結構:
input.zip └── PROJECT-pom ├── PROJECT-entities ├── PROJECT-service ├── PROJECT-tools ├── PROJECT-web (optional) └── pom.xmlAWS Transform 會分析您的 zip 套件,以尋找 PROJECT-service 目錄中的檔案,以便提供可選取的類別清單,供您重新建構。這些類別的尾碼為
ProcessImpl.java。完成選取要重新建構的類別頁面,然後選擇繼續。追蹤 Worklog 標籤上的重新強化狀態。
在檢視結果頁面上檢視已完成的重新建構的結果,其中會顯示每個類別的重新建構狀態。它也會指定在 S3 儲存貯體中尋找 Reforge 結果的位置。
AWS 轉換從您取得此輸入後,就會為您提供可下載的檔案,其中包含 Reforge 結果。
這是成功重新建構所產生的 zip 結構:
reforge.zip └── maven_project ├── reforge.log └──tokenizer_map.json
-
maven_project 包含強化來源碼。
-
已重構但未成功完成編譯的檔案位於
/src/main/resources/reforge/originalClassName.java.incomplete,並命名為。將這些檔案與原始版本的檔案進行比較,以選擇您要儲存的強化功能。originalClassName.java.incomplete -
提供給 AWS 轉換且已成功重構的來源檔案會備份至 ,
src/main/resources/reforge/originalClassName.java.original並命名為originalClassName.java.original。檔案的重構版本會取代提供給 AWS Transform 的來源檔案。
注意
只有在強化程序成功時,才會將
originalClassName.java檔案取代為強化檔案。否則,它們會保留原始內容。 -
-
reforge.log 包含可用於診斷任務失敗的日誌,或在發生問題 AWS 時提供支援的日誌。
-
tokenizer_map.json 包含權杖 IDs 與資料的映射,例如檔案路徑和類別/方法名稱,這些名稱會在日誌中權杖化,以保護隱私。您可以在發生問題時提供此檔案 AWS 以支援 。
規劃您的現代化應用程式測試
您可以根據擷取的程式碼屬性、任務複雜性和排程器路徑,為大型主機現代化應用程式建立和管理測試計畫。 AWS Transform 有助於排定要測試哪些任務的優先順序,並識別每個測試案例所需的特定成品。測試規劃程序分為三個主要階段:組態、範圍和檢閱。
建立測試計畫
-
設定測試計畫設定
-
在左側導覽窗格的規劃測試下,選擇設定設定。
-
(選用) 為您的商業邏輯擷取 (BLE) 提供 S3 路徑。這些成品可增強測試計畫品質。如果沒有 BLE 成品,測試計畫中的某些欄位可能會保持不完整。
-
-
定義測試計畫範圍
-
選取要包含在測試計畫中的進入點,例如批次任務。
-
根據多個屬性篩選和排序任務:
-
商業函數 (擷取自 BRE BLE)
-
網域 (從分解階段)
-
檔案路徑和位置
-
自訂搜尋條件
-
-
選取個別任務或整個群組進行測試。
-
檢閱任務關係和相依性。
-
-
檢閱和調整測試計畫
產生的測試計畫提供完整資訊,包括:
-
根據相依性偏好的執行順序
-
來自排程器的任務群組指派
-
複雜性分數,這是測試案例的彙總分數
-
商業網域關聯
-
循環複雜度指標
-
資料集和資料表相依性
-
程式碼指標行
-
商業函數映射
-
測試計畫自訂選項
您可以自訂您的測試計畫,以滿足特定需求。例如,您可以:
-
選取多個進入點以建立新的測試案例
-
合併現有的測試案例以結合相關功能
-
分割測試案例以進行更精細的測試
-
移除不必要的測試案例
-
新增或移除現有測試案例的進入點
-
修改測試案例描述和屬性
-
調整執行順序
詳細的測試案例資訊
每個測試案例都提供描述其內容和相關資料集或資料檔案的詳細資訊:
-
測試範圍的完整描述
-
包含的進入點完整清單
-
顯示複雜性和大小的彙總指標
-
商業規則和自動化測試案例指引
-
具有方向的資料集和資料表相依性 (輸入/輸出)
-
互動式相依性圖表視覺化
-
執行先決條件和要求
資料管理功能
這些詳細資訊可協助您了解與測試案例相關的資料。您可以:
-
依輸入/輸出方向篩選資料集
-
識別測試執行所需的成品
-
追蹤測試案例之間的資料相依性
-
監控跨測試計畫的資料集用量
注意
AWS 轉換會自動分析排程器相依性,並指派複雜性分數,以協助排定測試工作的優先順序。較高的複雜性分數表示在測試過程中可能需要更徹底測試或隔離的任務。
業務規則和測試案例指引
AWS 轉換測試計畫會根據業務規則擷取,為您的測試案例計畫提供建議:
-
使用 LLM 自動處理業務規則
-
產生合成測試案例
-
特定商業案例的測試指引
-
規則和測試案例之間的可追蹤性
最終測試計畫會存放在指定的 S3 位置,並包含所有必要資訊,以有效執行您的測試策略。您可以匯出測試計劃,以與其他測試工具或文件系統整合。
注意
提供綜合測試案例指引時,必須根據指引單獨建立實際的測試成品。測試計畫可做為測試策略的完整藍圖,但不會產生測試資料或執行指令碼。
測試案例建立規則 - 摘要
一般規則
-
測試案例以排程執行順序包含 1 到多個 JCLs
-
測試案例是從有效的支援排程器 (CA7 和 Control-M) 建立的
-
測試會執行 JCLs,而非排程器本身或排程任務
-
排程任務是唯一的,而且只會執行一個 JCL
-
一個 JCL 可由多個排程任務執行
-
一個 JCL 可以存在而不處於排程中
預設測試案例建立規則
-
如果測試案例中有單一 JCL:
-
JCL 不涉及排程
-
JCL 是由分散到多個分支的排程任務執行
-
排程中的分支僅包含此 JCL
-
-
如果測試案例中有多個 JCL: 代表排程分支內的線性執行路徑序列
-
如果 JCL 正在進行不同的排程任務:JCL 會成為自己的個別測試案例
-
如果 JCL 正在進行收斂排程任務:JCL 可以啟動新的測試案例,但不會包含在先前的分支中
-
略過缺少JCLs 並繼續執行 (計劃未來增強功能,以在缺少 JCL 點時剪下測試案例)
使用者操作規則
-
建立測試案例:使用者從可用的 JCLs 選取
-
如果排程執行分支序列中存在 JCLs則成功
-
遵循排程執行順序
-
-
將 JCL 新增至測試案例:使用者從可用的 JCLs 選取
-
如果測試案例的排程執行分支/路徑中可以存在 JCL,則成功
-
-
從測試案例移除 JCL:使用者可以從測試案例移除任何 JCL
-
即使造成執行路徑差距,也允許
-
-
合併測試案例:使用者選取要合併的兩個測試案例
-
如果 JCLs可以同時存在於相同的排程執行分支中,就會成功
-
維護排程執行順序
-
-
分割測試案例:使用者在分割的測試案例中選取一個 JCL
-
從分割點向前建立新的測試案例
-
原始測試案例已修改,以排除超過分割點JCLs
-
-
刪除測試案例:使用者可以刪除任何建立的測試案例
注意
您無法從不同的排程器分支/路徑建立、新增或合併測試案例。未來的增強計劃允許排程器中差異/彙整任務以外的操作。
產生測試資料收集指令碼
您可以產生 JCL 指令碼,根據上一個步驟中建立的測試計畫,從大型主機系統收集測試資料。 AWS Transform 會自動建立資料集、資料庫資料表和序列檔案的資料收集指令碼,以進行全面測試。資料收集程序分為四個主要階段:輸入組態、測試案例選擇、指令碼組態和指令碼產生。
產生測試資料收集指令碼
-
提供測試計畫輸入
-
在左側導覽窗格的測試資料收集下,選擇提供測試計畫輸入。
-
從規劃現代化應用程式測試中,指定測試計畫 JSON 檔案的 S3 路徑。
-
如果在上一個任務步驟中產生測試計畫,則輸入欄位會預先填入。
-
您也可以指定適當的 S3 位置,從其他任務中選取測試計畫。
-
-
選取資料收集的測試案例
-
檢閱測試計畫中測試案例的完整清單。
-
根據多個屬性篩選和排序測試案例:
-
商業函數和網域
-
資料庫資料表相依性
-
資料集需求
-
複雜性指標
-
自訂搜尋條件
-
-
選取個別測試案例或使用大量選取選項。
-
按一下一個測試案例以查看詳細資訊,以檢閱測試案例詳細資訊,包括進入點、指標和業務規則。
-
-
設定資料收集指令碼
-
下載範例範本和組態檔案以供參考。
AWS Transform 提供 Db2 資料庫卸載、VSAM 檔案 REPRO 和循序資料集處理的範例範本,做為程序預期範本類型的指引。
-
標準可能因網站而異,因此預期客戶會修改或取代這些範本,以符合自己的標準。
-
這些修改後的範本需要上傳至測試資料收集可以處理它們的 S3 儲存貯體。
-
提供變數組態檔案 (JSON 格式),其中包含:
-
使用者字首和環境特定的常數
-
資料庫組態參數
-
目的地端點設定和資料傳輸參數
-
使用者定義並用於 JCL 範本的其他必要參數
-
-
上傳不同資料收集方法的 JCL 範本:
-
Db2 範本:用於資料庫資料表卸載 (針對 BMC、IBM DSN 或其他卸載公用程式自訂)
-
VSAM 範本:用於 VSAM 檔案處理 (通常使用 REPRO 公用程式)
-
循序資料集範本:用於處理循序資料集、分割資料集、GDGs等。
-
-
-
檢閱和管理產生的指令碼
產生的指令碼提供全面的資料收集功能,包括:
-
分隔「之前」和「之後」測試執行資料收集的指令碼
-
依測試案例和資料類型排列的指令碼結構
-
指令碼會自動存放在 S3 儲存貯體中,以便輕鬆存取和傳輸
-
產生的 JCL 指令碼已準備好執行大型主機
-
變數替換是根據範本中定義的使用者組態
-
指令碼產生功能
產生的指令碼會根據您的範本和組態自動自訂:
-
範本型產生:使用您提供的 JCL 範本搭配變數替換
-
環境:納入您的特定大型主機組態
-
資料類型處理:為循序資料集、VSAM 檔案和資料庫資料表建立適當的指令碼
-
測試案例的集合:產生「之前」和「之後」的資料收集指令碼
-
循序資料集處理: AWS 提供的範例提供檔案傳輸函數,但可自訂為您站點可用的壓縮公用程式,或 Connect Direct 或受管檔案傳輸等公用程式。
資料收集策略
產生的指令碼支援全面的資料收集策略:
-
循序資料集收集:適用於 VSAM 和一般檔案的 REPRO 和複製公用程式
-
資料庫資料表卸載:可自訂的 Db2 卸載程序
-
循序資料集處理:可自訂循序資料集的後續處理,例如壓縮、受管檔案傳輸服務等。
-
相依性管理:根據測試案例定義協調集合
注意
AWS 轉換會根據您的範本和組態產生指令碼。在大型主機環境上執行之前,請檢閱所有產生的 JCL,以確保與您的特定系統組態和安全性需求相容。
範本自訂和最佳實務
ATX 測試資料收集提供靈活的範本自訂功能:
-
多重公用程式支援:針對不同的大型主機公用程式 (BMC、IBM、DSN) 調整範本
-
變數驅動組態:針對環境特定參數使用常數
-
可重複使用的範本:建立標準化範本以產生一致的指令碼
-
資料處理:納入組織特定的資料處理需求
-
安全整合:包含適當的安全與存取控制
-
效能最佳化:設定 以實現高效的資料收集和傳輸
產生的輸出結構
產生的指令碼會在 S3 儲存貯體中組織,結構如下:
-
測試案例組織:依相關測試案例分組的指令碼
-
收集時間:針對「之前」和「之後」資料收集分隔資料夾
-
資料類型分類:依循序資料集、資料庫資料表和傳輸整理的指令碼
-
中繼資料檔案:摘要資訊和執行指引
-
Ready-to-transfer格式:針對直接大型主機部署格式化的 JCL
最終指令碼集合會存放在指定的 S3 位置,並包含所有必要的 JCL,以有效執行您的資料收集策略。您可以下載要傳輸至大型主機環境的指令碼,或與自動化部署程序整合。
注意
產生完整的 JCL 指令碼時,必須在大型主機環境上執行實際執行。指令碼可做為ready-to-use資料收集工具,但需要適當的大型主機存取和執行許可。
測試自動化指令碼產生
您可以產生測試自動化指令碼,根據上一個步驟中建立的測試計畫,在現代化應用程式上執行測試案例。 AWS 轉換會自動建立全面的測試指令碼,利用從測試資料收集程序收集的資料。測試自動化指令碼產生程序包含三個主要階段:輸入組態、測試案例選擇和指令碼產生結果。
產生測試指令碼
-
提供測試計畫輸入
-
在左側導覽窗格的測試自動化指令碼產生下,選擇提供測試計畫輸入。
-
從規劃現代化應用程式測試中,指定測試計畫 JSON 檔案的 S3 路徑。
-
如果在上一個任務步驟中產生測試計畫,則輸入欄位會預先填入。
-
您也可以指定適當的 S3 位置,從其他任務中選取測試計畫。
-
系統會使用此測試計畫做為產生自動化指令碼的基礎。
-
-
選取測試案例以產生指令碼
-
檢閱測試計畫中測試案例的完整清單。
-
根據多個屬性篩選和排序測試案例:
-
商業函數和網域
-
資料庫資料表相依性
-
資料集需求
-
複雜性指標
-
自訂搜尋條件
-
-
選取個別測試案例,或使用大量選擇選項搭配全部勾選和全部取消勾選按鈕。
-
按一下個別測試案例,檢閱測試案例詳細資訊,包括進入點、指標和業務規則。
選取的測試案例將產生自動化指令碼,以便在現代化應用程式上執行。
-
-
檢閱和管理產生的測試自動化指令碼:
-
系統會顯示成功訊息,確認指令碼產生完成。
-
產生的測試指令碼會自動存放在您指定的 S3 儲存貯體位置。
-
使用各自的 S3 位置存取產生的測試指令碼的完整清單。
-
每個測試案例都有存放在個別 S3 位置的對應自動化指令碼。
-
指令碼已準備好在現代化應用程式環境中進行部署和執行。
-
測試自動化指令碼功能
產生的自動化指令碼提供全方位的測試功能:
-
現代化應用程式測試:指令碼專為在轉換的應用程式上執行測試案例而設計
-
資料整合:利用從先前測試資料收集步驟收集的測試資料,這些資料需要複製到每個測試案例的資料夾
-
自動化執行:指令碼可用來設定資料接收器、執行測試案例和比較結果,某些參數必須根據您的部署環境進行設定
-
組織化結構:指令碼是依 S3 儲存貯體中的測試案例系統化組織
-
Ready-to-deploy的格式:指令碼已格式化,可直接部署到您的測試環境
產生的輸出結構
產生的測試自動化指令碼會在 S3 儲存貯體中組織,結構如下:
-
測試案例組織:每個測試案例都有儲存在個別 S3 資料夾中的專用指令碼
-
可立即執行的格式:指令碼經過格式化,以便在根據您的環境設定一些變數之後立即部署和執行
-
集中存取:所有指令碼都可以從單一 S3 儲存貯體位置存取,以便輕鬆管理
測試執行策略
產生的指令碼支援完整的測試執行工作流程:
-
環境設定:指令碼包含設定初始資料以執行測試的功能
-
資料準備:與測試案例資料收集步驟中收集的測試資料整合
-
測試案例執行:在現代化應用程式上自動執行個別測試案例
-
結果比較:用於比較測試結果和驗證應用程式行為的內建功能
注意
AWS 轉換會根據您的測試計畫和選取的測試案例產生測試自動化指令碼。指令碼專為在現代化應用程式環境中執行而設計,並利用上一個步驟中收集的測試資料。在部署之前檢閱所有產生的指令碼,以確保與您的特定應用程式組態和測試需求相容。
測試自動化的最佳實務
-
環境驗證:確保您的現代化應用程式環境在指令碼執行之前已正確設定
-
資料驗證:驗證收集階段所需的測試資料是否可用且可存取
-
指令碼自訂:根據您的特定測試需求,視需要檢閱和自訂產生的指令碼
-
執行監控:在測試指令碼執行期間實作適當的監控和記錄
-
結果分析:建立分析測試結果和識別應用程式問題的程序
測試自動化指令碼的最終集合提供完整的測試架構,以驗證您的現代化應用程式功能。指令碼可以整合到您的持續測試程序中,或在應用程式驗證工作流程中執行。
AWS 轉換中的部署功能
AWS 轉換透過提供ready-to-use基礎設施即程式碼 (IaC) 範本,協助您為現代化大型主機應用程式設定雲端環境。透過 AWS 轉換聊天介面,您可以存取預先建置的範本,以建立運算資源、資料庫、儲存和安全控制等基本元件。範本提供熱門格式 AWS Cloud Development Kit (AWS CDK),包括 CloudFormation (CFN) 和 Terraform,讓您靈活部署基礎設施。
這些範本可做為建置區塊,減少為現代化大型主機應用程式設定環境所需的時間和專業知識。您可以自訂這些範本以符合您的需求,為您提供建置部署環境的基礎。
若要擷取 IaC 範本,請在 Infrastructure-as-Code 範本的 AWS 轉換聊天中詢問 ,以釐清您偏好的現代化模式 (例如大型主機重構 AWS 轉換)、您偏好的拓撲 (獨立與高可用性),以及您偏好的格式 (CloudFormation 與雲端開發套件與 Terraform)。