Abdullah Fathi
Recap: Agile
Pasukan Pembangun
Pasukan Operasi
Agile + DevOps
Proses yang Sama: Deliver aplikasi kepada pengguna akhir
Sentiasa menjadi matlamat utama
Deliver aplikasi kepada pengguna
DevOps adalah amalan yang memerlukan penglibatan pasukan pembangun dan operasi dalam kitar hayat pembangunan sistem secara keseluruhan
DevOps CI/CD
Penyampaian yang cepat dengan kod yang berkualiti
Rangka Kerja DevOps Sektor Awam - Muka Surat: 75
Infrastruktur Pipeline DevOps
Rangka Kerja DevOps Sektor Awam - Muka Surat: 84
Penggunaan Tools Mengikut Peringkat DevOps
Tools DevOps
Tools DevOps
Aktiviti di Peringkat DevOps
Peringkat awal dalam pembangunan produk yang membantu memastikan matlamat dan hala tuju produk yang dibangunkan difahami oleh setiap ahli pasukan DevOps
Panduan DevOps Sektor Awam - Muka Surat: 82
Aktiviti utama pada peringkat ini:
TOOLS PERANCANGAN
1. Perancangan Produk
Panduan DevOps Sektor Awam - Muka Surat: 87
Merangkumi komunikasi, perbincangan dan pengumuman di antara ahli pasukan sepanjang pembangunan produk.
Antara aktiviti dalam pengurusan komunikasi:
2. Pengurusan Komunikasi
Panduan DevOps Sektor Awam - Muka Surat: 93
Merancang jobs yang perlu diautomasikan pada pipeline CI/CD bagi setiap peringkat DevOps
Pipeline merupakan komponen terpenting dalam asas penambahbaikan berterusan. Pipline merangkumi dua komponen utama iaitu:
3. Perancangan Pelaksanaan Pipeline CI/CD
Panduan DevOps Sektor Awam - Muka Surat: 95
Dilaksanakan bagi membolehkan pemilik produk, pasukan pembangun dan penguji merancang, menjadual dan melaksana aktiviti pengujian
Bermula sprint zero, pemilik produk dan pasukan pembangun akan membincangkan perkara yang perlu dicapai dalam aktiviti pengujian bagi setiap sprint
4. Perancangan Pengujian
Panduan DevOps Sektor Awam - Muka Surat: 100
4.1. Pelan Pengujian
Panduan DevOps Sektor Awam - Muka Surat: 100
Menggunakan pendekatan incremental testing
Pengujian Unit -> Pengujian Integrasi -> Pengujian Sistem
4.2. Jenis dan Skop Aktiviti Pengujian
Panduan DevOps Sektor Awam - Muka Surat: 100
Aktiviti pengekodan serta pengujian dilakukan secara incremental dan iterative. Setiap sprint menghasilkan product increment dan maklum balas yang diperolehi akan menjadi input kepada sprint seterusnya
4.3. Pelaksanaan Pengujian
Panduan DevOps Sektor Awam - Muka Surat: 105
Panduan DevOps Sektor Awam - Muka Surat: 106
Aktiviti Pengujian Berdasarkan Agile Scrum
4.4 Penetapan Tahap Kritikal (Severity Level)
Tahap kritikal terhadap kegagalan fungsian atau penemuan ralat semasa pengujian. Masalah yang diperolehi semasa proses pengujian akan dianalisis dan dikategorikan berdasarkan Tahap Kritikal dan kesannya
Panduan DevOps Sektor Awam - Muka Surat: 111
Aliran Proses Pengendalian Ralat
Panduan DevOps Sektor Awam - Muka Surat: 112
4.5 Penetapan Traceability Matrix
Menjejaki hubungan diantara keperluan (requirement) dengan kes pengujian sepanjang kitar hayat pembangunan produk
Panduan DevOps Sektor Awam - Muka Surat: 113
Panduan DevOps Sektor Awam - Muka Surat: 115
Serahan / Output Peringkat Perancangan
Panduan DevOps Sektor Awam - Muka Surat: 116
Merupakan platform yang menyediakan perkhidmatan komunikasi dan kolaborasi antara ahli pasukan. Integrasi Mattermost dengan GitLab boleh dilaksanakan bagi tujuan mewujudkan Issues dan memulakan CI/CD jobs
Merupakan perisian kolaboratif yang membolehkan pengguna mencipta dan mengemas kini dokumentasi secara dalam talian. Kandungan dokumentasi ditulis
menggunakan format Markdown atau fungsi visual editor
Aliran Proses Kerja Peringkat Perancangan
Rujuk Panduan DevOps Sektor Awam: Muka Surat 83
Peringkat pembangunan kod aplikasi berdasarkan
user story yang telah ditetapkan pada sprint semasa
Panduan DevOps Sektor Awam - Muka Surat: 117
PENGEKODAN
1. Pengurusan Kod Sumber
Panduan DevOps Sektor Awam - Muka Surat: 121
Konfigurasi Pipeline CI/CD akan dikonfigurasikan pada peringkat ini berdasarkan kesesuaian sistem aplikasi
2. Konfigurasi Pipeline CI/CD
Panduan DevOps Sektor Awam - Muka Surat: 123
Memastikan kod sumber dibina berasaskan standard pembangunan sistem aplikasi yang telah ditetapkan berdasarkan Jaminan Kualiti Perisian (SQA)
3. Semakan Kualiti Kod
Panduan DevOps Sektor Awam - Muka Surat: 124
Pengujian awal yang boleh dibuat:
Serahan / Output Peringkat Pengekodan
Panduan DevOps Sektor Awam - Muka Surat: 125
Aliran Proses Kerja Peringkat Pengekodan
Rujuk Panduan DevOps Sektor Awam: Muka Surat 118
Proses pengubahsuaian fail dan aset lain dibawah tanggungjawab pasukan pembangun menjadi produk dalam bentuk akhir atau boleh digunakan. Pembinaan ini termasuk menyusun (compiling) fail kod sumber.
Panduan DevOps Sektor Awam - Muka Surat: 126
PEMBANGUNAN
1. Compile Code
Panduan DevOps Sektor Awam - Muka Surat: 128
2. Package Code
Panduan DevOps Sektor Awam - Muka Surat: 128
3. Pembinaan Kod dan Imej Container
Panduan DevOps Sektor Awam - Muka Surat: 129
Serahan / Output Peringkat Pembangunan
Panduan DevOps Sektor Awam - Muka Surat: 130
Docker
Virtual Machine
Container
Port 5000
Container
Port 5000
Container
Port 5000
Container
Port 3000
Container
Port 5000
Container
Port 3000
Port 5000
Port 3000
Port 3001
Host
Aliran Proses Kerja Peringkat Pembangunan
Rujuk Panduan DevOps Sektor Awam: Muka Surat 127
Aktiviti verifikasi yang dilakukan terhadap komponen atau sistem aplikasi untuk memastikan sistem dibangunkan berdasarkan kepada spesifikasi keperluan dan reka bentuk sistem
Panduan DevOps Sektor Awam - Muka Surat: 131
PENGUJIAN
Prasyarat
Panduan DevOps Sektor Awam - Muka Surat: 131
Serahan / Output Peringkat Pengujian
Panduan DevOps Sektor Awam - Muka Surat: 143
Sitespeed.io merupakan tools yang membantu dalam memantau, menganalisis dan mengoptimumkan prestasi laman web. Sitespeed.io mempunyai 3 keupayaan utama
berikut:
Rujuk Panduan DevOps Sektor Awam: Muka Surat 132
Proses untuk mengeluarkan versi baru produk kepada persekitaran penempatan. Pelepasan perubahan kod ke persekitaran penempatan boleh dilaksanakan secara automatik dalam pipeline CI/CD atau manual
Panduan DevOps Sektor Awam - Muka Surat: 144
PELEPASAN
1. Product Release
Panduan DevOps Sektor Awam - Muka Surat: 146
Versi Sistem (Semantic Versioning)
Pengekodan
Pengujian
Pembangunan
/ Pakej
Versi 1
Pengekodan
Pengujian
Pembangunan
/ Pakej
Versi 2
Pengekodan
Pengujian
Pembangunan
/ Pakej
Versi 3
Pengekodan
Pengujian
Pembangunan
/ Pakej
Versi 4
Penggantian Framework
Feature Baru
1.0.0
1.1.0
1.1.1
1.1.2
1 . 5 . 2
Major
Minor
Patch
Pembetulan Ralat
Pembetulan Ralat
2. Kaedah Penetapan Versi Release
Panduan DevOps Sektor Awam - Muka Surat: 147
Serahan / Output Peringkat Pelepasan
Artifak Gitlab Release
Panduan DevOps Sektor Awam - Muka Surat: 143
Aliran Proses Kerja Peringkat Pelepasan
Rujuk Panduan DevOps Sektor Awam: Muka Surat 145
Penempatan sistem aplikasi secara automasi oleh pipeline CI/CD memudahkan pasukan menempatkan versi baharu sistem aplikasi dengan pantas, mengurangkan masa henti dan mengurangkan ralat semasa proses pemasangan imej sistem aplikasi
ke persekitaran penempatan.
Panduan DevOps Sektor Awam - Muka Surat: 152
PENEMPATAN
Prasyarat
Panduan DevOps Sektor Awam - Muka Surat: 152
Persekitaran dan Pelayan
Panduan DevOps Sektor Awam - Muka Surat: 131
Serahan / Output Peringkat Penempatan
Paparan Environments yang memaparkan status senarai persekitaran penempatan
Panduan DevOps Sektor Awam - Muka Surat: 156
Rujuk Panduan DevOps Sektor Awam: Muka Surat 153
Merujuk kepada proses dan aktiviti yang dilakukan untuk mengurus dan menyelenggara infrastruktur sistem aplikasi secara automasi. Matlamat pengoperasian adalah untuk memastikan infrastruktur sistem aplikasi
beroperasi pada tahap optimum
Panduan DevOps Sektor Awam - Muka Surat: 158
PENGOPERASIAN
Rancher adalah platform untuk menguruskan kluster Kubernetes melalui antara muka web
Rujuk Panduan DevOps Sektor Awam: Muka Surat 159
Proses menjejak, menganalisis dan memaparkan laporan prestasi sistem aplikasi untuk membantu pasukan operasi mengenal pasti dan menyelesaikan isu dengan lebih efisien
Panduan DevOps Sektor Awam - Muka Surat: 163
PEMANTAUAN
Konsep Kebolehperhatian (Observability)
Ditakrifkan sebagai bagaimana pasukan membuat tafsiran terhadap keadaan sistem berdasarkan output yang diperoleh daripada aktiviti pemantauan
Panduan DevOps Sektor Awam - Muka Surat: 163
1. Pemantauan Sistem
Proses untuk memantau log, penggunaan sumber dan kadar ketersediaan sistem
Panduan DevOps Sektor Awam - Muka Surat: 169
Aktiviti dalam pemantauan sistem:
2. Pemantauan Prestasi Sistem Aplikasi
Proses mengumpul data untuk membantu pasukan mengesan ralat, memantau penggunaan sumber dan mengesan perubahan prestasi yang berlaku dalam sistem aplikasi seterusnya memberi kesan terhadap pengalaman pengguna
Panduan DevOps Sektor Awam - Muka Surat: 173
3. Perancangan Kapasiti Sistem (Capacity Planning)
Memastikan perkhidmatan sistem aplikasi dan kapasiti infrastruktur dapat menyokong penyampaian perkhidmatan berdasarkan sasaran tahap perkhidmatan yang telah ditetapkan
Panduan DevOps Sektor Awam - Muka Surat: 174
4. Pemantauan Maklum Balas Pengguna
Membantu meningkatkan kualiti sistem aplikasi. Saluran maklum balas seperti meja bantuan boleh digunakan sebagai medium pengantara untuk pengguna memberikan maklum balas berkaitan sistem aplikasi
Panduan DevOps Sektor Awam - Muka Surat: 176
Serahan / Output Peringkat Pemantauan
Panduan DevOps Sektor Awam - Muka Surat: 179
Elastic Observability menyediakan satu platform yang mengumpulkan data log, metrik infrastruktur, data uptime, data jejak (traces) transaksi sistem aplikasi, data
pengalaman pengguna dan data sintetik
Rujuk Panduan DevOps Sektor Awam: Muka Surat 168
Your feedback matters
Muat Turun Slaid Persembahan