Modul Ajar Informatika Kelas 12 SMA: Proyek Kolaboratif Rekayasa Informatika dan Tata Kelola Solusi Digital (Bab 6)

Merancang dan mengeksekusi proyek pengembangan produk digital kolaboratif menggunakan Git/GitHub, prinsip CI/CD, dokumentasi teknis, dan presentasi produk.

Capaian dan tujuan pembelajaran

  • Mengelola kolaborasi kode sumber perangkat lunak tim menggunakan sistem kontrol versi terdistribusi (Git branching, commit, pull request, merge conflict resolution).
  • Membangun alur otomatisasi pengujian dan deployment aplikasi (CI/CD Pipeline) sederhana berbasis cloud.
  • Menyusun dokumentasi teknis (README, API docs, Architecture diagram) dan mempresentasikan produk solusi digital di hadapan pemangku kepentingan.

Materi pokok & uraian konsep pembelajaran

Puncak pembelajaran Informatika pada jenjang SMA Kelas 12 adalah Proyek Kolaboratif Rekayasa Informatika (*Capstone Project*). Pada modul ini, peserta didik menyatukan seluruh kompetensi yang telah dipelajari—dari algoritma, pemrograman, rekayasa perangkat lunak, basis data, keamanan, hingga analisis data—untuk memecahkan masalah riil di lingkungan sekolah atau masyarakat luas.

Peserta didik bekerja dalam tim lintas peran (Project Manager, UI/UX Designer, Frontend/Backend Developer, QA Tester) dan mengadopsi standar kolaborasi industri modern menggunakan *Version Control System* (Git & GitHub). Peserta didik mempraktikkan manajemen alur kerja berbasis *branching* (*Git Flow*), penyusunan *Pull Request* yang ditelaah rekan sejawat (*Code Review*), serta penyelesaian konflik kode (*merge conflict*).

Pembelajaran juga mencakup pengenalan konsep integrasi berkelanjutan (*Continuous Integration & Continuous Deployment* - CI/CD) untuk memastikan kode teruji dan terpasang secara otomatis di server staging/production. Proyek diakhiri dengan pameran karya digital (*demo day*), penyusunan dokumentasi teknis yang rapi, dan pertanggungjawaban etis atas dampak sosial solusi digital yang diciptakan.

Peta subtopik bahasan

  • Kolaborasi Kode Tim dengan Git dan GitHub

    Perintah git clone, branch, commit berstandar konvensional, push, pull request (PR), code review, dan merge.

  • Otomatisasi Alur Pengujian dan Deployment (CI/CD Pipeline)

    Pengenalan automated testing (Unit Testing), pipeline build otomatis via GitHub Actions, dan hosting aplikasi web.

  • Dokumentasi Arsitektur, User Manual, dan Presentasi Demo Day

    Penyusunan file README profesional, diagram arsitektur sistem, manual pengguna, dan presentasi pitch deck.

Istilah kunci dan glosarium

Version Control System (VCS)
Perangkat lunak (seperti Git) yang merekam setiap riwayat perubahan file kode dari waktu ke waktu sehingga pengembang dapat melacak dan kembali ke versi sebelumnya.
Pull Request (PR)
Mekanisme pengajuan usulan penggabungan cabang kode (branch) fitur baru ke cabang utama (main) yang disertai proses telaah kode (*code review*).
Merge Conflict
Kondisi di mana dua pengembang mengubah baris kode yang sama pada file yang sama di cabang berbeda, memerlukan resolusi manual.
CI/CD (Continuous Integration / Continuous Deployment)
Praktik rekayasa perangkat lunak yang mengotomatiskan proses pengujian kode, pembuatan paket aplikasi (build), dan perilisan langsung ke server publik.
Unit Testing
Metode pengujian tingkat kode di mana setiap fungsi atau unit modul kecil program diuji secara individual untuk memastikan fungsinya benar.

Instrumen asesmen formatif & contoh soal pembelajaran

5 butir instrumen soal pilihan ganda berbasis HOTS untuk mengukur pemahaman konsep pada bab ini. Dilengkapi kunci jawaban dan uraian pembahasan analitis.

Soal 1

Dalam alur kerja kolaborasi Git, perintah yang digunakan untuk membuat cabang (branch) fitur baru bernama 'fitur-login' dan langsung berpindah ke cabang tersebut adalah...

  • A. `git delete fitur-login`
  • B. `git checkout -b fitur-login` (atau `git switch -c fitur-login`)
  • C. `git commit -m "fitur-login"`
  • D. `git push origin main`
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Perintah `git checkout -b <nama_branch>` membuat cabang baru sekaligus memindahkan pointer HEAD ke cabang tersebut untuk mulai mengembangkan fitur terisolasi.

Soal 2

Ketika dua orang pengembang dalam tim mengubah baris teks yang sama pada file `app.py` di cabang yang berbeda, lalu mencoba menggabungkannya ke cabang `main`, situasi yang akan terjadi pada Git adalah...

  • A. Git akan menghapus komputer kedua pengembang.
  • B. Terjadi 'Merge Conflict' di mana Git menandai konflik tersebut dan meminta pengembang memilih baris perubahan mana yang akan dipertahankan.
  • C. Git otomatis memilih perubahan yang paling panjang tulisannya.
  • D. Seluruh repositori kembali kosong.
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Merge conflict terjadi saat ada benturan suntingan pada baris yang sama; pengembang harus mereview tanda pemisah konflik `<<<<<<<` dan `>>>>>>>` untuk menyelesaikan kode final.

Soal 3

Apa manfaat paling signifikan dari penerapan Continuous Integration (CI) dalam siklus pengembangan perangkat lunak modern?

  • A. Menghilangkan kebutuhan untuk menulis kode logika aplikasi.
  • B. Setiap perubahan kode yang di-push ke repositori akan otomatis diuji oleh skrip pengujian (automated tests) sehingga bug dapat terdeteksi sejak dini sebelum masuk ke sistem produksi.
  • C. Mempercepat pengisian daya baterai laptop pengembang.
  • D. Mengubah programmer menjadi robot fisik.
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: CI mendeteksi regresi kode atau kerusakan sistem secara dini melalui pengujian otomatis (*automated test suites*) setiap kali ada commit/PR baru.

Soal 4

Struktur dokumen `README.md` repositori proyek perangkat lunak yang profesional dan ramah pengguna sebaiknya memuat elemen penting berikut, KECUALI...

  • A. Deskripsi ringkas proyek dan tangkapan layar antarmuka aplikasi.
  • B. Petunjuk instalasi dan langkah menjalankan aplikasi di lingkungan lokal.
  • C. Password administrator basis data produksi publik yang ditulis secara terbuka.
  • D. Panduan kontribusi, arsitektur teknologi (tech stack), dan lisensi perangkat lunak.
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan C

Pembahasan: Kredensial sensitif dan rahasia produksi (password/API keys) TIDAK BOLEH pernah ditulis di README atau diunggah ke repositori publik demi keamanan siber.

Soal 5

Dalam presentasi produk digital (Pitch Deck / Demo Day) di hadapan calon pengguna dan penguji, fokus penyampaian materi yang paling efektif adalah...

  • A. Membaca setiap baris kode sintaksis dari baris 1 hingga baris 2000 tanpa henti.
  • B. Menjelaskan masalah riil yang dihadapi pengguna (*problem*), solusi yang ditawarkan aplikasi (*value proposition*), demonstrasi alur fitur kunci secara langsung, dan dampak manfaat terukur.
  • C. Menjelaskan riwayat perdebatan antar-anggota tim saat menentukan warna tombol.
  • D. Menyalahkan komputer sekolah jika terjadi kegagalan presentasi.
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Presentasi produk yang baik menyoroti masalah nyata, proposisi nilai solusi, demo interaktif alur kerja pengguna (*user journey*), dan dampak positif produk.

Petunjuk penggunaan berkas

Setelah mengunduh berkas perangkat ajar, ikuti langkah berikut untuk menggunakannya secara optimal:

  1. Buka dokumen menggunakan Microsoft Word, Google Docs, atau LibreOffice.
  2. Sesuaikan identitas satuan pendidikan, nama guru pengampu, NIP, serta alokasi waktu kelas.
  3. Cetak instrumen asesmen atau bagikan lembar kerja (LKPD) kepada peserta didik.

Bahan ajar Informatika lainnya

  • Berpikir Komputasional

    Informatika SMP Kelas 7 · Semester 1

  • Teknologi Informasi dan Komunikasi

    Informatika SMP Kelas 7 · Semester 1

  • Sistem Komputer

    Informatika SMP Kelas 7 · Semester 1