MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
Rangkuman SDLC
1. SDLC
(System Development Life Cycle)
Adalah sebuah siklus hidup pengembangan software yang terdiri dari beberapa
tahapan-tahapan penting dalam membangun suatu software yang dilihat dari segi
pengembangannya. Terdapat 4 metodologi SDLC yaitu :
A. WATERFALL
Model ini melakukan pendekatan secara sistematis dan urut mulai dari level
kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification,
dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus
menunggu selesainya tahap sebelumnya dan berjalan berurutan. Roger S. Pressman
memecah model ini menjadi 6 tahapan, yaitu :
1. System / Information Engineering and Modeling.
Mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke
dalam bentuk software. Tahap ini sering disebut dengan Project Definition.
2. Software Requirements Analysis.
Proses pencarian kebutuhan diintensifkan dan difokuskan pada software.
Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan software) harus
didokumentasikan dan ditunjukkan kepada pelanggan.
3. Design
Proses mengubah kebutuhan-kebutuhan diatas menjadi representasi ke
dalam bentuk “blueprint” software sebelum coding dimulai. Desain harus dapat
mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya.
4. Coding
Desain yang telah dibuat kemudian diubah ke dalam bahasa
pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap
design yang secara teknis nantinya dikerjakan oleh programmer.
5. Testing / Verification
Proses pengujicobaan pada software yang telah dibuat, agar software
bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah
didefinisikan sebelumnya.
6. Maintenance
Yaitu Pemeliharaan suatu software, termasuk di dalamnya adalah
pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu.
Pengembangan diperlukan ketika adanya perubahan dari eksternal perusahaan seperti
ketika ada pergantian sistem operasi, atau perangkat lainnya.
2. Berikut adalah Konsep SDLC – Waterfall :
Keuntungan menggunakan teknik waterfall:
Proses menjadi teratur
Estimasi proses menjadi lebih baik
Jadwal menjadi lebih menentu
Kelemahan menggunakan teknik waterfall:
Sifatnya kaku, sehingga susah melakukan perubahan di tengah proses
Membutuhkan daftar kebutuhan yang lengkap di awal, tapi jarang konsumen bisa
memberikan kebutuhan secara lengkap diawal
3. B. PROTOTYPE
Adalah pendekatan yang secara langsung mendemonstrasikan bagaimana sebuah
software akan bekerja dalam lingkungannya sebelum tahapan konstruksi aktual
dilakukan (Howard, 1997). Beberapa model prototype adalah sebagai berikut :
Reusable prototype
Prototype yang akan ditransformasikan menjadi produk final.
Throwaway prototype
Prototype yang akan dibuang begitu selesai menjalankan maksudnya.
Input/output prototype
Prototype yang terbatas pada antar muka pengguna (user interface).
Processing prototype
Prototype yang meliputi perawatan file dasar dan proses-proses transaksi
System prototype
Prototype yang berupa model lengkap dari perangkat lunak.
Proses pada model prototyping adalah sebagai berikut:
1. Pengumpulan kebutuhan
Developer dan klien bertemu dan menentukan bagian-bagian yang akan
dibutuhkan berikutnya.
2. Perancangan
Perancangan mewakili semua aspek software yang diketahui, dan rancangan
ini menjadi dasar pembuatan prototype.
3. Evaluasi prototype
Klien mengevaluasi prototype yang dibuat dan digunakan untuk memperjelas
kebutuhan software.
Perulangan ketiga proses ini terus berlangsung hingga semua kebutuhan
terpenuhi. Prototype-prototype dibuat untuk memuaskan kebutuhan klien dan
untuk memahami kebutuhan klien lebih baik. Prototype yang dibuat dapat
dimanfaatkan kembali untuk membangun software lebih cepat, namun tidak semua
prototype bisa dimanfaatkan.
4. Pendekatan prototyping memiliki beberapa keuntungan yaitu:
Pemodelan membutuhkan dukungan aktif dari end-user.
Perubahan dan iterasi merupakan konsekuensi alami dari pengembangan system.
End user dapat melihat dan merasakan langsung prototyping.
Kesalahan yang terjadi dalam prototyping dapat dideteksi lebih dini
Prototyping dapat meningkatkan kreatifitas karena membolehkan adanya feedback
dari end user. Hal ini akan memberikan solusi yang lebih baik.
Prototyping mempercepat beberapa fase hidup dari programmer.
Pendekatan prototyping memiliki beberapa kekurangan yaitu:
Prototyping memungkinkan terjadinya pengembalian terhadap kode, implementasi,
dan perbaikan siklus hidup yang digunakan untuk mendominasi sistem informasi.
Prototyping tidak menolak kebutuhan dari fase analisis sistem. Prototype hanya dapat
memecahkan masalah yang salah dan memberi kesempatan sebagai sistem
pengembangan konvensional.
Prototyping dapat mengurangi kreatifitas perancangan.
C. RAD (Rapid Application Development)
Adalah model proses pembangunan software yang tergolong dalam teknik
incremental (bertingkat).
Keuntungan dalam model RAD yaitu :
RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat.
Waktu yang singkat adalah batasan yang penting untuk model ini.
RAD menggunakan metode iteratif (berulang) dalam mengembangkan sistem dimana
working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan
dengan tujuan menetapkan kebutuhan user.
Kelemahan dalam model RAD yaitu:
Model RAD membutuhkan sumber daya yang besar
Proyek bisa gagal karena waktu yang disepakati tidak dipenuhi
Sistem yang tidak bisa dimodularisasi tidak cocok untuk model RAD
Resiko teknis yang tinggi juga kurang cocok untuk model RAD
5. Secara umum fase-fase pada RAD adalah sebagai berikut
Bussines modeling
Data modeling
Proses modeling
Application generation : RAD mengasumsikan pemakaian teknik 4G (generasi
keempat). RAD lebih banyak memproses kerja untuk memakai lagi komponen
program atau menciptakan komponen yang bisa dipakai lagi.
Testing and Turn Over : karena menekankan pada reusability, banyak komponen
program yang telah diuji sehingga mengurangi keseluruhan waktu pengujian. Tapi
komponen baru harus diuji dan semua interface harus dilatih secara penuh.
D. AGILE SOFTWARE DEVELOPMENT
Adalah jenis pengembangan sistem jangka pendek yang memerlukan adaptasi cepat
dari pengembang terhadap perubahan dalam bentuk apapun. Menurut Agile Alliance,
ada 12 prinsip yang mendorong keberhasilan dalam penerapan Agile Software Development,
yaitu :
Kepuasan klien adalah prioritas utama, dengan menghasilkan produk lebih awal dan
terus menerus.
Menerima perubahan atas segala kebutuhan.
Penyerahan software dalam hitungan waktu beberapa minggu sampai beberapa bulan.
Pihak bisnis dan pengembang harus bekerja sama selama pengembangan berjalan.
Membangun proyek di lingkungan orang-orang yang bermotivasi tinggi yang bekerja
dalam lingkungan yang mendukung dan yang dipercaya untuk dapat menyelesaikan
proyek.
Komunikasi dengan berhadapan langsung adalah komunikasi yang efektif dan efisien
Software yang berfungsi adalah ukuran utama dari kemajuan proyek
Dukungan yang stabil dari sponsor, pembangun, dan pengguna diperlukan untuk
menjaga perkembangan yang berkesinambungan
Perhatian kepada kehebatan teknis dan desain yang bagus meningkatkan sifat agile
Kesederhanaan merupakan hal penting
Arsitektur, kebutuhan dan desain yang bagus muncul dari tim yang mengatur dirinya
sendiri
Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif dan segera
melakukannya.
Kelebihan dari Agile Software Development yaitu:
Meningkatkan kepuasan kepada klien
Pembangunan system dibuat lebih cepat
Mengurangi resiko kegagalan implementasi software dari segi non-teknis
Jika pada saat pembangunan system terjadi kegagalan,kerugian dari segi materi
relative kecil.
Berikut beberapa model proses yang terdapat pada model Proses Agile :
6. a. Extreme Programming (XP)
Terdiri dari aktivitas perencanaan, aktivitas desain, aktivitas pengkodean dan
aktivitas pengujian.
b. Adaptive Software Development (ASD)
Teknik untuk membangun software dan sistem yang komplek
c. Dinamic System Development Method
Menyajikan kerangka kerja (framework) untuk membangun dan memelihara
sistem dalam waktu yang terbatas melalui penggunaan prototyping yang incremental
dalam lingkungan yang terkondisikan. Terdiri dari Feasibility Study, Business Study,
Functional Model Iteration, Desain & Build iteration, & Implementation
7.
8. d. SCRUM
Diperkenalkan oleh Jeff Sutherland tahun awal tahun 1990-an, Pengembangan berikutnya
dilakukan oleh Schwaber dan Beedle, Scrum memiliki prinsip:
Ukuran tim yang kecil melancarkan komunikasi, mengurangi biaya, dan
memberdayakan satu sama lain
Proses dapat beradaptasi terhadap perubahan teknis dan bisnis
Proses menghasilkan beberapa software increment
Pembangunan dan orang yang membangun dibagi dalam tim yang kecil
Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun
Proses ini mampu menyatakan bahwa produk selesai kapanpun diperlukan
Pada metode SCRUM terdapat aktivitas yang dijalankan yaitu Backlog, Sprints, Scrum
Meetings, Demo. Skema dari SCRUM adalah sebagai berikut:
e. Agile Modelling
Adalah suatu metodologi yang praktis untuk dokumentasi dan pemodelan sistem
software. AM adalah kumpulan nilai-nilai, prinsip dan praktek-praktek untuk memodelkan
software agar dapat diaplikasian pada software development proyek secara efektif. Prinsip
dalam Agile Modelling adalah sebagai berikut:
Membuat model dengan tujuan
Mengunakan multiple models
Travel light
Isi lebih penting dari pada penampilan
Memahami model dan alat yang yang digunakan untuk membuat software
Adaptasi secara lokal