FR - Ia.06 Analis Program
FR - Ia.06 Analis Program
06
1.1 Apakah yang dimaksud dengan skalabilitas perangkat lunak ? (KUK 1.1) (TS)
Skalabilitas perangkat lunak adalah kemampuan sistem untuk menangani peningkatan
beban atau pengguna tanpa mengalami penurunan kinerja yang signifikan atau kegagalan
sistem. Ini bisa mencakup penambahan sumber daya secara horizontal (menambah instansi)
atau vertikal (meningkatkan kapasitas pada satu instansi), serta kemampuan untuk
menambah fungsionalitas tanpa mengganggu yang sudah ada
2. Menggunakan sql
1.2 Perintah SQL untuk mengaktifkan database yang akan digunakan adalah ?
USE nama_database;
2.1 Fitur pengolahan data DDL yang digunakan untuk menghapus database adalah ?
DROP DATABASE nama_database;
2.2 Struktur sebuah tabel terdapat kesalahan tipe data kolom tanggal_lahir pada tabel
siswa. Perintah SQL yang digunakan untuk modifikasi tipe data pada kolom tanggal lahir
adalah ?
ALTER TABLE siswa
MODIFY tanggal_lahir DATE;
4.1 Script yang digunakan untuk menghitung jumlah pelanggan dengan menggunakan
stored procedure adalah ?
DELIMITER //
CREATE PROCEDURE hitungJumlahPelanggan()
BEGIN
DECLARE jumlah INT;
SELECT COUNT(*) INTO jumlah FROM customers;
SELECT jumlah AS 'Jumlah Pelanggan';
END //
DELIMITER ;
4.2 Perintah SQL untuk memanggil stored procedure dengan nama HapusProduk, yang
memiliki argumen kode_produk_param bertipe teks (varchar) adalah ?
CALL HapusProduk('nilai_kode_produk');
5.1 Klausa pada function yang memiliki arti akhir dari pernyataan pada funnction adalah ?
RETURN
5.2 Perintah SQL untuk memanggil function dengan nama sf_tampil_siswa_kelas, yang
memiliki argumen p_kelas bertipe integer adalah ?
SELECT sf_tampil_siswa_kelas(nama_kelas);
6.3 Fungsi yang digunakan untuk merubah, memasukkan atau menghapus data secara
permanent adalah ? (KUK 8.1)
DML (Data Manipulation Language)
8.1 Perintah query yang digunakan untuk ”menyalin semua baris data dari table buku ke
dalam table buku baru dan menambahkan kolom baru penerbit” adalah ?
CREATE TABLE buku_baru AS
SELECT *, NULL AS penerbit
FROM buku;
8.2 Perintah SQL untuk membuat index pada dua kolom join tabel penjualan, yaitu
"kode_produk" dan "kode_cabang" adalah ?
CREATE INDEX idx_kode_produk_cabang ON penjualan (kode_produk, kode_cabang);
8.3 Perintah query yang disimpan pada database dengan suatu nama tertentu, sehingga
bisa digunakan setiap saat untuk melihat data tanpa menuliskan ulang query tersebut
adalah ?
View
3. Menerapkan akses basis data
1.1 1. Apa perbedaan perintah insert dan replace ? (KUK 1.1) (TRS)
1. insert digunakan untuk menyisipkan elemen baru ke dalam struktur data pada posisi
tertentu.
2. digunakan untuk menggantikan kemunculan substring dengan substring lain dalam
sebuah teks atau string.
1.2 2. Anda membuat program untuk menampilkan jadwal kuliah menggunakan perintah
sebagai berikut : “SELECT nama_matkul,jumlah_SKS,nama_dosen FROM mata_kuliah
INNER JOIN daftar_dosen ON NIP_dosen=NIP_dosen;” Apa yang anda lakukan apabila
terjadi ERROR 1052 (2
SELECT mata_kuliah.nama_matkul, mata_kuliah.jumlah_SKS, daftar_dosen.nama_dosen
FROM mata_kuliah
INNER JOIN daftar_dosen ON mata_kuliah.NIP_dosen = daftar_dosen.NIP_dosen;
1.3 3. Bagaimana cara membuat index pada MYSQL untuk mempercepat akses ? (KUK 1.3)
(JERSS)
CREATE INDEX index_name ON table_name (column_name);
2.1 4. Bagaimana cara library akses basis data dapat digunakan pada program yang anda
buat ? (KUK 2.1) (JERSS)
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "nama_database";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
2.2 5. Sebutkan dan jelaskan skenario pengujian basis data ? (KUK 4.1) (TMS)
1. Menguji koneksi ke basis data dengan menggunakan konfigurasi yang benar (host, port,
nama pengguna, kata sandi).
2. Memeriksa apakah aplikasi dapat melakukan operasi dasar seperti SELECT, INSERT,
UPDATE, dan DELETE.
1.1 Berikut ini yang tidak termasuk perbedaan konstanta dan variabel adalah
1.2 Salah satu kriteria penulisan dokumentasi adalah lengkap. Yang dimaksud lengkap
disini adalah
Dokumentasi yang lengkap mencakup semua aspek yang diperlukan untuk memahami,
mengimplementasikan, dan menggunakan produk atau sistem tersebut secara efektif.
1.4 Pada bahasa pemrograman Java, JavaScript, ActionScript,C, C++ dan C#, komentar
untuk setiap baris kode menggunakan notasi
// komentar 1 baris
/* komentar blok */
3.1 Perhatikan program berikut : int fibo(int n){ if((n==1) || (n==2) ) return 1; else return
(fibo(n-1)+fibo(n-2));} int main(int argc, char** argv) { int a; int i; cout<<"Masukan N :
";cin>>a; for(i=1;i<=a;i++){ cout<
#include <iostream>
using namespace std;
int main() {
int a;
return 0;
}
4.1 Informasi-informasi yang perlu dilengkapi dalam sebuah dokumentasi kode program
adalah
1. deskripsi umum
2. struktur kode
3. fungsi dan metode
4. algoritma atau logika bisnis
5. troubleshooting
6. panduan penggunaan
7. changelog ,
dan lainnya
5. Membuat dokumen kode program
2.1 Bagaimana cara membuat dokumentasi modul program ? (KUK 2.1) (JERSS)
- deskripsi modul
- instalasi dan persyaratan
- penggunaan modul
- API dokumentation
- pemecah masalah
2.2 Apa yang anda lakukan apabila modul program belum lengkap sesuai identitas untuk
memudahkan pelacakan ? (KUK 2.2) (CMS)
- menambahkan komentar dalam cod
- penambahan informasi identifikasi
- todo list atau issue tracker
- atau buat dokumntasi smenetara
2.4 Apa yang anda lakukan untuk mendokumentasikan suatu fungsi/metode yang sudah
usang dan diganti dengan fungsi atau metode lain tetapi belum menghapusnya karena
berisiko merusak kompatibilitas ? (KUK 2.4) (CMS)
- buat komentar khusus dalam PHDOc
- menggunakan anotasu @deprecated
- pesan error atau peringatan
4.1 Sebutkan dan jelaskan tools digunakan untuk generate dokumentasi ? (KUK 4.1) (TMS)
- PHPDoc dalah standar dokumentasi untuk PHP yang menggunakan komentar khusus
dalam kode untuk menghasilkan dokumentasi otomatis.
- Swagger atau OpenAPI Specification adalah alat untuk mendefinisikan, menciptakan, dan
mengatur API secara otomatis.
- Banyak Integrated Development Environments (IDEs) seperti Visual Studio Code, IntelliJ
IDEA, atau Eclipse dilengkapi dengan plugin atau integrasi bawaan untuk menghasilkan
dokumentasi langsung dari komentar dalam kode.
4.2 Bagaimana proses generate dokumentasi kode program ? (KUK 4.2) (JERSS)
- penulisan komentar khusus
- penanda element jode
- penggunaaan tag komen '@param'@return dan lainnya
- penggunaan Alat generasi dokumentasi
6. Melakukan debugging
1.1 Jelaskan perbedaan antara spesifikasi kode pada program terstruktur dan program
berorientasi objek?
- Program Terstruktur: Menggunakan fungsi sebagai unit utama, fokus pada prosedur dan
variabel global.
- Program Berorientasi Objek (OOP): Menggunakan kelas dan objek, menggabungkan data
dan perilaku dalam satu unit, dengan dukungan pewarisan dan polimorfisme untuk
pengelolaan kode yang lebih terstruktur dan modular.
2.3 Sebutkan apa saja yang harus dicatat dalam lembar ringkasan kode kesalahan ? (KUK
2.3) (TS)
- tanggal dan waktu
- jenis kesalahan
- deskripsi kesalahan
- lokasi Kode
- ltindakan perbaikan
- penanggung jawab
- status perbaikan
2.4 Bagaimana cara untuk menganalisis kriteria eksekusi aplikasi ? (KUK 2.2) (JERSS)
- definisikan tujuan dan kebutuhan aplikasi
- indentifikasi pengguna dan lingkungan penggunaan
- tentukan kriteria kinerja
- rencanakan pengujian
= eksekusi pengujian
- monitor dan analisis hasil pengujian
- identifikasi dan koreksi masalah
- validasi ulang
- dokumentasikan hasil dan evaluasi
3.1 Apa yang anda lakukan apabila terdapat informasi kesalahan “division by zero” pada
program anda ? (KUK 3.2)(CMS)
- Identifikasi lokasi kesalahan.
- Perbaiki kode untuk menangani kasus pembagian dengan nol.
- Tampilkan pesan kesalahan yang jelas.
- Uji kembali program setelah perbaikan.
- Dokumentasikan perubahan yang dilakukan.
1.1 Apakah yang dimaksud dengan profiling program dan jelaskan manfaat informasi
profiling
Profiling program adalah proses untuk mengukur kinerja program, mengidentifikasi area
yang memakan waktu atau sumber daya berlebih, dan mendapatkan data untuk optimasi.
Dan Manfaat informasi profiling meliputi optimasi kinerja, pengurangan konsumsi sumber
daya, pemecahan masalah yang lebih efisien, evaluasi dampak perubahan kode, monitoring
aplikasi real-time, dan bantuan dalam pengembangan produk baru atau pembaruan.
1.1 Menurut anda, apakah manfaat dari mengevaluasi kode pada program yang sudah
dibuat dan sebutkan apa saja yang harus dilakukan dalam mengevaluasi kode
sehingga tercipta program yang baik?
Mengevaluasi kode penting untuk meningkatkan kualitas, keamanan, dan kinerja program.
Langkah-langkahnya meliputi code review, pengujian, analisis kualitas kode, optimisasi, dan
evaluasi secara berkala. Hal ini memastikan program yang baik dan mudah dipelihara.
1.2 Apabila anda menemukan bugs pada kode program, langkah apa akan anda lakukan?
reproduksi bug, isolasi penyebab, perbaikan kode, pengujian ulang, pemantauan, dan
dokumentasi
2.1 Ketika Anda sudah melakukan review kode program dan menemukan ketidaksesuaian
style/standard penulisan kode apa langkah yang anda lakukan?
2.2 Apabila Anda ingin menampilkan nama mahasiswa saja dari tabel mahasiswa, maka
kode best practices seperti apa yang anda buatkan?
SELECT nama
FROM mahasiswa;
3.1 Sebutkan beberapa kategori Kode yang memang tidak perlu sesuai coding-guideline?
Tujuan pembuatan komentar pada kode program adalah untuk menjelaskan tujuan, logika, dan
konteks dari bagian kode tertentu, memudahkan pemahaman dan pemeliharaan kode.
- Berorientasi Objek: Mengujikan metode atau fungsi yang terkait dengan objek, fokus pada
interaksi objek dan pewarisan.
1,2 Sebutkan kriteria pemilihan automation testing tools dan berikan contohnya untuk
setiap bahasa pemrograman ?
- Kemudahan Penggunaan: Alat harus memiliki antarmuka yang mudah digunakan dan
mendukung bahasa pemrograman yang dikuasai tim pengembangan.
- Fleksibilitas: Mendukung berbagai jenis pengujian seperti pengujian unit, pengujian fungsional,
dan pengujian performa.
- Pilih data uji yang mencakup nilai batas, kasus ekstrem, dan umum.
- Pastikan ada data statis dan dinamis yang digunakan dalam pengujian.
- Atur dan kelola data uji untuk memudahkan penggunaan dalam pengujian.
- Setup dan Teardown: Gunakan setup untuk inisialisasi dan teardown untuk membersihkan
setelah pengujian.
- Komentar yang Relevan: Sertakan komentar yang menjelaskan tujuan dan asumsi pengujian.
- Asertif yang Tepat: Gunakan asertif yang sesuai untuk verifikasi hasil pengujian.
- Struktur yang Jelas: Organisasi kode dengan struktur yang terstruktur dan mudah dipahami.
Penanganan Eksepsi: Tangani eksepsi dengan baik dalam pengujian.
2.2 Apa yang anda lakukan apabila pengujian menggunakan outomation testing tools
tidak menghasilkan status hasil pengujian passed atau failed ?
- Uji Manual:
- Susun laporan hasil uji coba dengan temuan dan tindak lanjut yang diambil.
- identifikasi Lokasi Kesalahan: Temukan di mana logika program tidak berfungsi sesuai yang
diharapkan.
- Analisis Penyebab: Telusuri kode untuk memahami mengapa kesalahan logika terjadi.
- Perbaiki Kode: Modifikasi kode untuk memperbaiki alur logika yang salah.
- Uji Coba: Lakukan pengujian untuk memastikan perubahan yang dilakukan telah mengatasi
masalah.
- Review dan Validasi: Tinjau kembali perubahan untuk memastikan tidak ada dampak negatif
pada bagian lain dari program.
- Dokumentasi: Catat perubahan yang dilakukan dan pemahaman baru untuk memperbaiki
proses di masa mendatang.
Pengujian integrasi program adalah jenis pengujian yang menguji integrasi antara komponen
atau modul program untuk memastikan bahwa mereka bekerja secara harmonis sebagai satu
kesatuan. Tujuannya adalah untuk memvalidasi interaksi antar-komponen dan memastikan
bahwa sistem secara keseluruhan berfungsi dengan benar setelah komponen-komponen
tersebut digabungkan.
1.2 Apa perbedaan istilah integrasi non- incremental, dan integrasi incremental ?
1. Integrasi Non-Incremental:
- Deskripsi: Semua komponen atau modul diintegrasikan secara bersamaan dalam satu tahap.
- Kekurangan: Risiko penemuan masalah yang lebih besar karena integrasi dilakukan pada saat
yang sama.
2. Integrasi Incremental:
- Deskripsi: Komponen atau modul diintegrasikan secara bertahap, satu per satu atau dalam
kelompok kecil.
- Keuntungan: Meminimalkan risiko dengan mendeteksi masalah lebih awal dan memudahkan
isolasi masalah.
- Kekurangan: Memerlukan manajemen integrasi yang cermat dan membutuhkan waktu lebih
lama untuk menyelesaikan pengujian keseluruhan.
2.1 Data apa saja yang dipersiapkan untuk uji integrasi program ?
- Data Uji: Data yang digunakan untuk menguji integrasi antara komponen atau modul program.
- Skrip Pengujian: Skrip atau rangkaian perintah yang menguji berbagai kasus integrasi antar-
komponen.
- Dokumentasi: Dokumentasi tentang alur integrasi yang diharapkan dan ekspektasi hasil yang
diinginkan.
- aporan Hasil: Format atau template untuk merekam dan melaporkan hasil pengujian integrasi,
termasuk temuan masalah dan status pengujian.
- Menghasilkan Data Uji: Memungkinkan pembuatan data uji secara otomatis untuk pengujian
perangkat lunak.
- Variasi Data: Menghasilkan berbagai jenis data yang mencakup skenario normal, batas, dan
ekstrem untuk pengujian yang komprehensif.
- Efisiensi Pengujian: Mempercepat proses pengujian dengan menghindari pembuatan data uji
secara manual.
- Konsistensi: Menjamin konsistensi dalam format dan kualitas data yang digunakan dalam
pengujian.
- Penghematan Biaya: Mengurangi biaya dan waktu yang diperlukan untuk mengelola dan
menghasilkan data uji secara manual.
Top Down Integration adalah pendekatan pengujian integrasi yang dimulai dari tingkat tertinggi
(atau paling luas) dalam hierarki sistem menuju tingkat terendah (atau paling spesifik)
- Fungsionalitas: Memastikan bahwa seluruh komponen atau modul berfungsi dengan benar
saat diintegrasikan.
- Interaksi: Memeriksa interaksi antara komponen atau modul untuk memastikan tidak ada konflik
atau ketidakcocokan.
- Antarmuka: Memverifikasi kecocokan antara antarmuka komponen atau modul yang berbeda.
- eandalan: Menjamin bahwa sistem dapat beroperasi dengan andal setelah diintegrasikan,
tanpa kegagalan atau kerusakan yang tidak diinginkan.
- Kesesuaian dengan Persyaratan: Memastikan bahwa hasil integrasi sesuai dengan spesifikasi
dan persyaratan fungsional sistem.
3.3 Jelaskan langkah anda mengevaluasi dan analisis hasil pengujian modul program ?
- Review Hasil Pengujian: Memeriksa hasil pengujian untuk setiap modul secara detail.
- Identifikasi Kegagalan: Menyaring dan mengidentifikasi kasus uji yang gagal atau tidak lulus.
- Analisis Penyebab: Menganalisis log dan pesan kesalahan untuk memahami akar penyebab
kegagalan.
- Koordinasi dengan Tim: Berkomunikasi dengan tim pengembangan untuk memberikan laporan
dan mendiskusikan solusi.