LECTURE NOTES
LEARNING OUTCOMES
Explain design activities in iterative and agile systems development lifecycle
OUTLINE MATERI :
- The System Development Life Cycle (SDLC)
- The Support Phase of the SDLC
- Methodologies, Models, Tools, and Techniques
- Two approaches to Software Construction and Modeling
- Agile Development
ISI MATERI
Terdapat dua konsep utama yang berkaitan dengan pembahasan ini. Konsep pertama
adalah terdapat dua tipe pendekatan SDLC yaitu pendekatan prediktif dan adaptif. Konsep yang
kedua adalah terdapat dua metodologi pengembangan yaitu pendekatan terstruktur dan berbasis
objek. Ini adalah dua konsep yang terpisah. Saat mengerjakan sebuah proyek dua pendekatan ini
dapat dikombinasikan, pendekatan untuk siklus hidup dan pendekatan untuk metodologi.
Kedua pendekatan ini merupakan sebuah rangkaian dan semua proyek dapat memiliki
elemen dari kedua pendekatan ini. Pendekatan prediktif bagi SDLC digunakan untuk proyek
yang jelas lingkupnya dan resikonya rendah. Pendekatan adaptif bagi SDLC digunakan untuk
proyek yang lingkup masih kurang jelas dan resikonya lebih tinggi. SDLC adaptif lebih berulang
dan memungkinkan tim proyek untuk beradaptasi terhadap perubahan lingkungan.
Konsep lain yang harus dipahami adalah perbedaan diantara kedua metodologi ini
terhadap pengembangan sistem yang saat ini digunakan untuk mengembangkan sistem bisnis,
pendekatan terstruktur dan berorientasi objek. Pendekatan berorientasi objek merujuk pada
pengembangan sistem yang menggunakan teknologi objek yang lebib baru yang membutuhkan
pendekatan dalam tahap analisis, perancangan, dan programming.
Pada akhir topik ini, akan dibahas mengenai filosofi Agile dan prinsip pemodelan Agile.
Mahasiswa diharapkan mampu memahami bahwa filosofi Agile menganggap sebagian besar
pengguna tidak memahami kerumitan dari proses bisnis dan software pendukung serta
kebanyakan proyek harus fleksibel dan lincah. Pemodelan Agile memiliki prinsip dasar untuk
mendorong pengembang untuk menggunakan pemodelan sebagai sarana untuk sebuah produk.
Salah satu konsep utama dala pengembangan sistem adalah system development life
cycle (SDLC). SDLC merujuk pada keseluruhan proses untuk membangun, mengimplementasi,
menggunakan, dan memperbaharui sistem informasi.
Terdapat dua tipe pendekatan SDLC yaitu prediktif dan adaptif. Tidak ada pendekatan
yang terbaik, semuanya harus disesuaikan dengan kondisi lingkungan proyek. Pendekatan
prediktif mengasumsuikan bahwa proyek pengembangan direncanakan dengan baik dan sistem
informasi yang baru dapat dikembangkan sesuai dengan rencana. Pendekatan adaptif digunakan
saat kebutuhan atau persyaratan yang jelas dari pengguna tidak jelas atau tidak dipahami.
Pendekatan yang lebih fleksibel diperlukan untuk memungkinkan rencana proyek dimodifikasi
sesuai dengan perkembangan proyek. Gambar 1 berikut menggambarkan rangakaian antara
prediktif menuju ke adaptif.
6. Penerapan aktivitas yang berhubungan dengan konversi data, testing final, dan
mengimplementasikan sistem untuk digunakan.
Model SDLC yang paling prediktif sering disebut dengan model air terjun (Waterfall
model), sebuah SDLC yang mengasumsikan beberapa fase dalam proyek dapat diselesaikan
secara berurutan satu fase menuju ke fase berikutnya dan tidak diijinkan untuk kembali ke
fase sebelumnya seperti yang ditampilkan dalam Gambar 3. Pendekatan ini hampir tidak pernah
digunakan lagi karena pendekatan ini tidak pernah berjalan dengan baik.
Pendekatan yang dimodifikasi dari model air terjun ini lebih fleksibel dan memungkinkan
fase-fase berjalan bersamaan. Gambar 4 menampilkan bagaiman model air terjun yang
dimodifikasi akan bekerja. Tidak hanya menjadi lebih efektif namun juga menjadi lebih efisien
dengan memungkikan pengembang untuk menjalankan tugas analisa, perancangan dan
pemrograman secara bersamaan.
Pendekatan lain yang termasuk dalam pendekatan adaptif ditampilkan dalam gambar 6
dan 7. Gambar 7 adalah pendekatan adaptif dimana iterasi ditampilkan dalam kolom dan
beberapa proses utama. Proses utama digunakan untuk mengelompokkan aktivitas yang
berhubungan, seperti fase dalam pendekatan prediktif. Di dalam setiap iterasi kita akan
melakukan beberapa kegiatan dari proses utama.
Gambar 7 Adaptive SDLC with six core processes and multiple iterations
Models
Model menampilkan gambaran dari aspek yang utama dari dunia nyata. Terkadang, abstraksi
digunakan untuk menggambarkan hal yang dianggap penting. Model digunakan untuk
mengembangkan sistem termasuk menampilkan input, output, proses, data, objek, iteraksi objek,
lokasi, jaringan, dan alat. Model dapat berupa grafik, dimana digambarkan dengan simbol dan
beberapa-beberapa aturan.
Tools
Dalam pengembangan sistem, tools berarti software yang membantu untuk membuat model atau
komponen lain yang diperlukan di dalam proyek, seperti alat gambar untuk menghasilkan model
grafik. Alat ini dirancang khusus untuk membantu pengembang sistem. Programer akan sangat
mengenal IDE (integrated development environment), yang menyediakan banyak alat untuk
mengerjakan tugas pemrogaman.
Teknik
Dalam pengembangan sistem, teknik adalah kumpulan panduan yang membantu analis untuk
menyelesaikan kegiatan atau tugasnya. Dapat berisi langkah-langkah untuk membuat model atau
yang lebih umum mengenai saran untuk mengumpulkan informasi dari pengguna sistem.
Metodologi adalah kumpulan dari teknik-teknik yang digunakan untuk menyelesaikan aktivitas
di dalam setiap fase dalam SDLC.
Pemrograman top-down membagi program yang lebih rumit ke dalam hirarki model
program (Gambar 8). Satu modul di bagian atas hirarki mengendalikan ekskusi program dengan
memanggil modul yang ada di bawah.
Terdapat 2 prinsip dalam perancangan terstruktur : modul program harus memiliki couple
yang rendah dan cohesif yang tinggi. Couple yang rendah berarti setiap modul sebagai modul
tersendiri dari yang lainnya. Tinggi kohesif berarti setiap modul menyelesaikan satu tugas
dengan jelas.
Teknik analisa terstruktur membantu pengembang menentukan apa yang harus dikerjakan
oleh sistem, data apa yang harus disimpan dan digunakan, input dan output apa yang diperlukan ,
dan bagaimana fungsi-fungsi tersebut bekerja sama untuk mencapai satu tujuan. Model grafik
utama untuk menggambarkan persyaratan sistem adalah data flow diagram. Model lain yang
perlu dibuat adalah tipe-tipe kata benda yang perlu untuk disimpan oleh sistem (entitas data).
Pemodelan data ini dapat digambarkan dengan Entity relationship diagram (ERD).
Analisa berbasis objek membantu untuk menentukan objek yang menjalankan pekerjaan
dan menentukan interaksi dengan pengguna apa yang diperlukan untuk menyelesaikan tugas.
Perancangan berbasis objek menentukan semua tipe-tipe tambahan dari objek yang diperlukan
untuk berkomunikasi dengan orang dan alat di dalam sistem, menampilkan bagaiman objek
berinteraksi untuk menyelesaikan tugas. Pemrograman berbasis objek adalah penulisan program
di dalam bahasa pemrograman untuk menentukanapa yang dilakukan oleh setiap objek. Hal ini
diselesaikan dengan menggunakn method.
Objek adalah jenis dari benda. Bisa merupakan pelanggan atau karyawan atau tombol
atau menu. Mengidentifikasi objek berarti mengklasifikasikan benda. Klasifikasi atau class
menampilkan kumpulan dari objek yang sejenis. Dalam pengembangan berorientasi objek
digunakan class diagram untuk menampilkan semua class yang ada di dalam sistem.
Agile Development
Agile
development
adalah
sebuah
filosofi
dan
serangkaian
panduan
untuk
mengembangkan sistem informasi di dalam lingkungan yang sering berubah dan dapat
digunakan dengan metodologi pengembangan sistem apapun. Metodologi agile adalah sebua
filosofi tentang bagaimana membangun model, beberapa diantaranya formal dan detil, namun
yang lainnya hanya berupa sketsa dan sangat ringkas.
menerus terlibat di dalam tim proyek. Mereka tidak bisa hanya duduk dengan tim proyek dalam
beberapa sesi untuk mengembangkan spesifikasi. Mereka menjadi bagian dari tim teknis.
SIMPULAN
Proyek pengembangan sistem dikelola menggunakan system development life cycle
(SDLC). Beberapa SDLC menggunakan pendekatan prediktif dan yang lainnya menggunakan
pendekatan adaptif. Dalam pendekatan prediktif fase-fase yang ada dijalankan berurutan atau ada
yang beberapa yang berjalan bersamaan. Fase SDLC tradisional terdiri dari inisialisasi,
perencanaan proyek, analisis, perancangan, implementasi, deployment, dan dukungan.
Pendekatan adaptif digunakan saat persyaratan atau teknologi yang ada berada dalam
ketidakpastian dan sulit untuk merencanakan segala sesuatu di dalam proyek. SDLC yang adaptif
menggunakan beberapa perulangan yang memungkinkan analisis, perancanganm dan
implementasi menjadi bagian-bagian yang lebi kecil sebelum digabungkan menjadi satu kembali.
Metodologi yang digunakan untuk pendekatan pengembangan software dan pemodelan
adalah pendekatan tradisional dan berbasis objek. Pendekatan tradisional menggunakan model
dan teknik seperti use case, data flow diagram, entity relationship diagram, structure charts,
teknik analisis terstruktur, teknik perancangan terstruktur, dan teknik pemrograman yang
terstruktur. Pendekatan berbasis objek melihat software sebagai kumpulan dari objek yang saling
berinteraksi dan berkerjasama untuk menyelesaikan sebuah tugas. Model dan teknik yang
digunakan adalah use case, class diagram, sequence diagram, package diagram, state machine
diagram, analisa, perancangan, dan pemrograman berbasis objek.
Pengembangan Agile membantu proyek pengembangan sistem responsif terhadap
perubahan. Pemodelan agile menjelaskan prinsip untuk menjaga proyek tetap lincah (agile).
DAFTAR PUSTAKA
John W. Satzinger,Robert B. Jackson,Stephen D. Burd. 2012. Introduction to Systems Analysis
and
Design
An
ISBN:9781111972264
Agile,
Iterative
Approach.
Course
Technology.
Canada.