Modernisasi aplikasi CardDemo mainframe dengan menggunakan AWS Transform - AWS Prescriptive Guidance

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Modernisasi aplikasi CardDemo mainframe dengan menggunakan AWS Transform

Santosh Kumar Singh dan Cheryl du Preez, Amazon Web Services

Ringkasan

AWS Transformdirancang untuk mempercepat modernisasi aplikasi mainframe. Ini menggunakan AI generatif untuk merampingkan proses modernisasi mainframe. Ini mengotomatiskan tugas-tugas kompleks, seperti: analisis kode warisan, dokumentasi mainframe, ekstraksi aturan bisnis, dekomposisi aplikasi monolitik ke dalam domain bisnis, dan refactoring kode. Ini mempercepat proyek modernisasi dengan mengotomatiskan tugas-tugas kompleks, seperti analisis aplikasi dan perencanaan urutan migrasi. Saat menguraikan aplikasi monolitik, urutkan transformasi aplikasi mainframe AWS Transform secara cerdas, yang membantu Anda mengubah fungsi bisnis secara paralel. AWS Transform dapat mempercepat pengambilan keputusan dan meningkatkan kelincahan operasional dan efisiensi migrasi.

Pola ini menawarkan step-by-step instruksi untuk membantu Anda menguji kemampuan modernisasi mainframe AWS Transform dengan menggunakan CardDemo, yang merupakan contoh aplikasi mainframe open source.

Prasyarat dan batasan

Prasyarat

  • Aktif Akun AWS

  • AWS IAM Identity Center, diaktifkan

  • Izin yang memungkinkan administrator mengaktifkan AWS Transform

  • Izin yang memungkinkan administrator menerima permintaan koneksi Amazon Simple Storage Service (Amazon S3) untuk aplikasi web AWS Transform

Batasan

  • AWS Transform hanya tersedia di beberapa Wilayah AWS. Untuk daftar lengkap Wilayah yang didukung, lihat Wilayah yang Didukung untuk AWS Transform.

  • AWS Transform mendukung analisis kode, pembuatan dokumen, ekstraksi aturan bisnis, dekomposisi, dan refactoring dari Common Business-Oriented Language (COBOL) ke Jawa. Untuk informasi selengkapnya, lihat Kemampuan dan fitur utama serta Jenis file yang didukung untuk transformasi aplikasi mainframe.

  • Ada kuota layanan untuk kapabilitas transformasi mainframe di. AWS Transform Untuk informasi lebih lanjut, lihat Kuota untuk AWS Transform.

  • Untuk berkolaborasi di ruang kerja bersama, semua pengguna harus menjadi pengguna terdaftar dari contoh yang sama AWS IAM Identity Center yang terkait dengan instance AWS Transform aplikasi web Anda.

  • Bucket Amazon S3 dan AWS Transform harus berada di tempat yang sama Akun AWS dan Wilayah.

Arsitektur

Diagram berikut menunjukkan arsitektur yang Anda atur dalam pola ini.

Menggunakan AWS Transform untuk memodernisasi aplikasi mainframe yang disimpan dalam bucket Amazon S3.

Diagram menunjukkan alur kerja berikut:

  1. AWS Transform menggunakan konektor untuk mengakses aplikasi CardDemo mainframe, yang disimpan dalam bucket Amazon S3.

  2. AWS Transform digunakan AWS IAM Identity Center untuk mengelola akses pengguna dan otentikasi. Sistem ini menerapkan beberapa lapisan kontrol keamanan untuk otentikasi, otorisasi, enkripsi, dan manajemen akses untuk membantu melindungi kode dan artefak selama pemrosesan. Pengguna berinteraksi dengan AWS Transform agen melalui antarmuka obrolan. Anda dapat memberikan instruksi kepada agen AI untuk tugas-tugas tertentu dalam bahasa Inggris. Untuk informasi lebih lanjut, lihat Human in the loop (HITL) dalam AWS Transform dokumentasi.

  3. Agen AI menafsirkan instruksi pengguna, membuat rencana kerja, membagi pekerjaan menjadi tugas yang dapat dieksekusi, dan bertindak secara mandiri. Pengguna dapat meninjau dan menyetujui transformasi. Tugas transformasi meliputi:

    • Analisis kode — AWS Transform menganalisis kode di setiap file untuk detail seperti nama file, jenis file, baris kode, dan jalurnya. Agen menganalisis kode sumber, menjalankan klasifikasi, membuat pemetaan ketergantungan, dan mengidentifikasi artefak yang hilang. Ini juga mengidentifikasi komponen duplikat.

    • Pembuatan dokumen — AWS Transform menghasilkan dokumentasi untuk aplikasi mainframe. Dengan menganalisis kode, secara otomatis dapat membuat dokumentasi terperinci dari program aplikasi, termasuk deskripsi logika bisnis, alur, integrasi, dan dependensi yang ada dalam sistem lama Anda.

    • Ekstraksi logika bisnis — AWS Transform menganalisis program COBOL untuk mendokumentasikan logika bisnis inti mereka, untuk membantu Anda memahami logika bisnis mendasar.

    • Dekomposisi kode — AWS Transform menguraikan kode menjadi domain yang memperhitungkan dependensi antara program dan komponen. Mengelompokkan file dan program terkait dalam domain yang sama meningkatkan organisasi dan membantu melestarikan struktur logis aplikasi saat memecahnya menjadi komponen yang lebih kecil.

    • Perencanaan gelombang migrasi — Berdasarkan domain yang Anda buat selama fase dekomposisi, buat rencana gelombang AWS Transform migrasi dengan urutan modernisasi yang direkomendasikan.

    • Code refactoring — AWS Transform memfaktorkan ulang kode di semua atau file domain yang dipilih ke dalam kode Java. Tujuan dari langkah ini adalah untuk melestarikan logika bisnis kritis aplikasi sambil memfaktorkannya ke aplikasi Java yang dimodernisasi dan dioptimalkan di cloud.

  4. AWS Transform menyimpan kode refactored, dokumen yang dihasilkan, artefak terkait, dan pustaka runtime di bucket Amazon S3 Anda. Anda dapat melakukan tindakan berikut:

    • Akses folder runtime di bucket Amazon S3 Anda.

    • Buat dan terapkan aplikasi dengan mengikuti Build dan deploy aplikasi modern pasca-refactoring Anda dalam dokumentasi. AWS Transform

    • Melalui antarmuka obrolan, minta dan unduh sampel AWS CloudFormation, AWS Cloud Development Kit (AWS CDK), atau template Hashicorp Terraform. Template ini dapat membantu Anda menyebarkan AWS sumber daya yang diperlukan untuk mendukung aplikasi refactored.

    • Gunakan Reforge untuk meningkatkan kualitas kode refactored dengan menggunakan model bahasa besar (). LLMs Mesin refactoring mempertahankan kesetaraan fungsional COBOL sambil mengubahnya menjadi kode Java. Reforge adalah langkah opsional yang tersedia setelah transformasi. Langkah ini digunakan LLMs untuk merestrukturisasi kode agar sangat mirip dengan Java asli, yang dapat meningkatkan keterbacaan dan pemeliharaan. Reforge juga menambahkan komentar yang dapat dibaca manusia untuk membantu Anda memahami kode, dan menerapkan pola pengkodean modern dan praktik terbaik.

Alat

Layanan AWS

  • AWS Transformmenggunakan AI agen untuk membantu Anda mempercepat modernisasi beban kerja lama, seperti .NET, mainframe, dan beban kerja. VMware

  • AWS IAM Identity Centermembantu Anda mengelola akses masuk tunggal (SSO) secara terpusat ke aplikasi Anda Akun AWS dan cloud.

  • Amazon Simple Storage Service (Amazon S3) adalah layanan penyimpanan objek berbasis cloud yang membantu Anda menyimpan, melindungi, dan mengambil sejumlah data.

Repositori kode

Anda dapat menggunakan aplikasi AWS CardDemomainframe open source sebagai contoh aplikasi untuk memulai modernisasi mainframe.

Praktik terbaik

  • Mulai dari yang kecil — Mulailah dengan kode kecil yang kurang kompleks (15.000-20.000 baris kode) untuk mendapatkan pemahaman tentang bagaimana AWS Transform menganalisis dan mengubah aplikasi mainframe.

  • Kombinasikan dengan keahlian manusia — Gunakan AWS Transform sebagai akselerator sambil menerapkan keahlian manusia untuk hasil yang optimal.

  • Tinjau dan uji secara menyeluruh — Selalu tinjau kode yang diubah dengan hati-hati dan jalankan tes komprehensif untuk memvalidasi kesetaraan fungsional setelah transformasi.

  • Berikan umpan balik — Untuk memberikan umpan balik dan saran untuk perbaikan, gunakan tombol Kirim umpan balik di AWS Management Console atau buat kasus dengan AWS Dukungan. Untuk informasi selengkapnya, lihat Membuat kasus dukungan. Masukan Anda sangat berharga untuk peningkatan layanan dan pengembangan masa depan.

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Buat bucket.

Buat bucket Amazon S3 di tempat yang sama Akun AWS dan Wilayah yang AWS Transform diaktifkan. Anda menggunakan bucket ini untuk menyimpan kode aplikasi mainframe, dan AWS Transform menggunakan bucket ini untuk menyimpan dokumen yang dihasilkan, kode refactored, dan file lain yang terkait dengan transformasi. Untuk petunjuknya, lihat Membuat bucket di dokumentasi Amazon S3.

AWS Umum

Siapkan contoh aplikasi mainframe.

  1. Masukkan perintah berikut untuk mengkloning CardDemorepositori ke workstation lokal Anda:

    git clone https://github.com/aws-samples/aws-mainframe-modernization-carddemo.git

  2. Buat folder baru bernamacarddemo.

  3. Salin app folder, yang berisi kode sumber mainframe, dari repositori kloning ke dalam folder. carddemo

  4. Kompres cardemo folder menjadi file ZIP.

  5. Unggah file ZIP ke bucket Amazon S3 yang Anda buat. Untuk petunjuk, lihat Mengunggah objek dalam dokumentasi Amazon S3.

Pengembang aplikasi, DevOps insinyur
TugasDeskripsiKeterampilan yang dibutuhkan

Tambahkan pengguna ke Pusat Identitas IAM.

Tambahkan calon pengguna Anda ke IAM Identity Center. Ikuti petunjuk di Menambahkan pengguna di Pusat Identitas IAM dalam AWS Transform dokumentasi.

Administrator AWS

Aktifkan AWS Transform dan tambahkan pengguna.

  1. Aktifkan AWS Transform. Ikuti petunjuk di Aktifkan AWS Transform.

  2. Tambahkan pengguna ke AWS Transform. Ikuti petunjuk di Menambahkan pengguna ke AWS Transform.

Administrator AWS

Konfigurasikan akses pengguna ke aplikasi AWS Transform web.

Setiap pengguna harus menerima undangan untuk mengakses aplikasi AWS Transform web. Ikuti instruksi dalam Menerima undangan dalam AWS Transform dokumentasi.

Pengembang aplikasi, Pemilik aplikasi

Masuk ke aplikasi AWS Transform web.

Ikuti instruksi di Masuk ke AWS Transform.

Pengembang aplikasi, Pemilik aplikasi

Siapkan ruang kerja.

Siapkan ruang kerja tempat pengguna dapat berkolaborasi dalam AWS Transform aplikasi web. Ikuti petunjuk dalam Menyiapkan ruang kerja Anda di AWS Transform dokumentasi.

Administrator AWS
TugasDeskripsiKeterampilan yang dibutuhkan

Buat pekerjaan transformasi.

Buat pekerjaan transformasi untuk memodernisasi aplikasi CardDemo mainframe. Untuk petunjuk, lihat Membuat dan memulai pekerjaan di AWS Transform dokumentasi. Ketika Anda diminta untuk menetapkan tujuan dalam antarmuka AWS Transform obrolan, pilih Lakukan modernisasi mainframe (IBM z/OS ke AWS) dan kemudian pilih Analyze code, Generate technical documentation, Business logic, Decompose code, Plan Migration sequence dan Transform code to Java.

Pengembang aplikasi, Pemilik aplikasi

Siapkan konektornya.

Buat konektor ke bucket Amazon S3 yang berisi aplikasi CardDemo mainframe. Konektor ini memungkinkan AWS Transform untuk mengakses sumber daya dalam bucket dan melakukan fungsi transformasi berturut-turut. Untuk petunjuk, lihat Mengatur konektor dalam AWS Transform dokumentasi.

Administrator AWS

Lakukan analisis kode.

  1. Pada halaman Tentukan lokasi aset, masukkan path bucket Amazon S3 untuk file carddemo ZIP yang Anda unggah.

  2. Pilih Setujui dan kirim ke AWS Transform. Ini mulai menganalisis kode.

  3. Pantau status pada tab Worklog.

  4. Saat analisis selesai, di bawah Analisis kode di panel navigasi kiri, pilih Lihat hasil analisis kode.

  5. (Opsional) Pilih Unduh untuk mengunduh daftar aset lengkap, kode sumber yang hilang, dan file ketergantungan.

Untuk informasi selengkapnya, lihat Analisis kode dalam AWS Transform dokumentasi.

Pengembang aplikasi, Pemilik aplikasi

Hasilkan dokumentasi teknis.

  1. Di panel navigasi kiri, di bawah Hasilkan dokumentasi teknis, pilih Pilih file dan konfigurasikan pengaturan.

  2. Perluas COBOL atau JCL, lalu pilih satu atau beberapa file.

  3. Pilih tingkat detail dokumentasi:

    • Ringkasan — Memberikan ikhtisar tingkat tinggi dari setiap file dalam ruang lingkup. Juga, berikan ringkasan satu baris dari setiap file.

    • Spesifikasi fungsional terperinci - Memberikan detail komprehensif untuk setiap file dalam lingkup transformasi aplikasi mainframe. Beberapa detail termasuk logika dan aliran, aturan bisnis yang diidentifikasi, aliran data, dependensi, pemrosesan input dan output, dan berbagai detail transaksi.

  4. Pilih Kirim ke AWS Transform.

  5. Pantau kemajuan di tab Worklog.

    catatan

    Waktu pembuatan dokumen bervariasi dari menit ke jam, tergantung pada jumlah file dan baris kode.

  6. Setelah selesai, pilih Tinjau hasil dokumentasi.

  7. Akses dokumen yang dihasilkan melalui aplikasi web atau unduh. Dokumentasi yang dihasilkan juga disimpan di bucket Amazon S3.

  8. Jelajahi dokumentasi yang dihasilkan dengan mengajukan pertanyaan spesifik di antarmuka obrolan. Misalnya, Anda dapat mengatakan “Beri tahu saya fitur CBACT01C.”

Untuk informasi selengkapnya, lihat Menghasilkan dokumentasi teknis dalam AWS Transform dokumentasi.

Pengembang aplikasi, Pemilik aplikasi

Ekstrak logika bisnis.

  1. Di panel navigasi kiri, perluas Ekstrak logika bisnis, lalu pilih Pilih file untuk ekstraksi logika bisnis.

  2. Perluas COBOL atau JCL, lalu pilih satu atau beberapa file.

  3. Pilih Kirim ke AWS Transform.

  4. Pantau kemajuan di tab Worklog.

    catatan

    Waktu ekstraksi logika bisnis bervariasi dari menit ke jam, tergantung pada jumlah file dan baris kode.

  5. Ketika ekstraksi selesai, pilih Tinjau hasil ekstraksi logika bisnis.

  6. Pilih file COBOL atau JCL, lalu pilih Lihat.

  7. Ubah ruang lingkup dalam Diagram alir dan aturan fungsional untuk meninjau berbagai tingkat diagram alir, termasuk kode pendukung.

  8. (Opsional) Tinjau logika bisnis yang dihasilkan, yang disimpan dalam format JSON di bucket Amazon S3 Anda.

Untuk informasi selengkapnya, lihat Mengekstrak logika bisnis dalam AWS Transform dokumentasi.

Pengembang aplikasi, Pemilik aplikasi

Menguraikan kode.

  1. Di panel navigasi kiri, perluas kode Dekomposisi, lalu pilih Dekomposisi menjadi domain.

  2. Dalam daftar Tindakan, pilih Buat domain.

  3. Masukkan nama untuk domain baru, sepertiBill payment.

  4. (Opsional) Berikan deskripsi.

  5. Di bilah pencarian Cari file, cariCB00, lalu pilih file.

  6. Pilih Tandai sebagai benih.

  7. Verifikasi bahwa bendera benih berubah dari Tidak menjadi Ya.

  8. Pilih Buat.

  9. Pilih Simpan.

  10. Pilih Dekomposisi.

  11. Tinjau output dekomposisi dengan memilih nama domain.

  12. Ketika dekomposisi selesai, pilih Kirim ke AWS Transform.

Untuk informasi lebih lanjut tentang dekomposisi dan benih, lihat Dekomposisi dalam dokumentasi. AWS Transform

Pengembang aplikasi, Pemilik aplikasi

Rencanakan gelombang migrasi.

Rencanakan gelombang migrasi untuk CardDemo aplikasi. Ikuti petunjuk dalam perencanaan gelombang Migrasi dalam AWS Transform dokumentasi untuk meninjau dan mengedit rencana gelombang.

Pengembang aplikasi, Pemilik aplikasi

Memfaktorkan ulang kode.

  1. Refactor aplikasi CardDemo mainframe ke dalam kode Java di semua atau file domain yang dipilih. Ikuti instruksi dalam kode Refactor dalam AWS Transform dokumentasi.

  2. Setelah proses refactoring selesai, bangun dan terapkan aplikasi Java yang dimodernisasi. Ikuti petunjuk di Build dan terapkan aplikasi modern pasca-refactoring dalam dokumentasi. AWS Transform

Pengembang aplikasi, Pemilik aplikasi

(Opsional) Gunakan Reforge untuk meningkatkan kode Java.

  1. Buat pekerjaan baru, dan kemudian masukkan tujuanReforge the code.

  2. Masukkan proyek yang telah dimodernisasi. AWS Transform Proyek ini harus ada di bucket Amazon S3 Anda.

  3. Masukkan daftar kelas Java yang menentukan kelas layanan mana yang akan direformasi.

  4. Tinjau output yang dihasilkan di bucket Amazon S3.

Untuk informasi selengkapnya, lihat Reforge di dokumentasi. AWS Transform

Pengembang aplikasi, Pemilik aplikasi

Merampingkan penyebaran.

AWS Transform dapat menyediakan infrastruktur sebagai templat kode (IAc) untuk CloudFormation, AWS CDK, atau Terraform. Template ini membantu Anda menerapkan komponen inti, termasuk komputasi, database, penyimpanan, dan sumber daya keamanan.

  1. Di antarmuka AWS Transform obrolan, minta templat dengan memasukkanShare the mainframe refactor <service> templates, di <service> mana salah satu layanan IAc yang didukung.

  2. Menyebarkan template dengan menggunakan layanan pilihan Anda. Misalnya, lihat sumber daya berikut:

Untuk informasi selengkapnya, lihat Kemampuan penerapan dalam AWS Transform dokumentasi.

Pengembang aplikasi, Pemilik aplikasi

Pemecahan Masalah

IsuSolusi

Anda tidak dapat melihat kode sumber atau dokumen yang dihasilkan dalam aplikasi AWS Transform web.

Tambahkan kebijakan ke izin CORS untuk bucket Amazon S3 untuk AWS Transform mengizinkan sebagai asal. Untuk informasi selengkapnya, lihat izin CORS bucket S3 dalam dokumentasi. AWS Transform

Sumber daya terkait

AWS dokumentasi

AWS Sumber daya lainnya

Video dan tutorial

catatan

AWS Transform Sebelumnya dikenal sebagai Amazon Q Developer transform untuk mainframe.