Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore SDLC - PT 3

SDLC - PT 3

Published by ari santoso, 2021-09-30 02:00:40

Description: PT 3

Search

Read the Text Version

SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC)

Kemampuan akhir tiap tahapan belajar dan Penilaian Pertemuan 2 Sub-CPMK3 Mampu menerapkan model System Development Life Cycle (SDLC) secara mandiri, bermutu, dan terukur (C3, CPMK4) Indikator: Ketepatan menjelaskan tentang Software Development Life Cycle (SDLC) Kriteria & Teknik: Ketepatan dan penguasaan tentang SDLC dalam bentuk tes.

Media Pembelajaran 1. Ecampus STTI NIIT (https://ecampus.i-tech.ac.id/) 2. PubHMTL5 (Bahan Ajar) (https://online.pubhtml5.com/ecdbc/syvv/) 3. Power Point 4. Video Streaming ( ) 5. Mentimeter 6. Quizizz (Pre Test dan Post Test) dan ecampus 9. Whatsapp (085692405633)

Pokok Bahasan Materi Pertemuan 2 A. Pengertian SDLC B. Model Proses Pengembangan Perangkat Lunak C. Model Waterfall D. Model Prototipe E. Model Spiral F. Model Rapid Application Development (RAD) G. Model Scrum H. Latihan Soal Mandiri dan Tugas Kelompok Pertemuan 3

Pengetahuan Mahasiswa Pertemuan 3 tentang Software Development Life Cycle https://www.menti.com/kode menti



A. Pengertian SDLC Pada awal pengembangan perangkat lunak, para pembuat program (programmer) langsung melakukan pengodean perangkat lunak tanpa menggunakan prosedur atau tahapan pengembangan perangkat lunak. Dan ditemuilah kendala-kendala seiring perkembangan skala system- system perangkat yang semakin besar. (rosa, 2019) https://cdns.klimg.com/merdeka.com/i/w/news/2012/10/18/104530/540x https://sevima.com/wp-content/uploads/2017/01/Programmer- 270/gaji-programmer-google-lebih-besar-dari-apple-dan-facebook.jpg Stress.png

Software Development Life Cycle (SDLC) https://upload.wikimedia.org/wikipedia/commons/0/03/Ordinateurs_centraux_348-3- dimulai sejak tahun 1960-an. 006.jpg Fungsinya mengembangkan system dengan skala usaha besar secara fungsional untuk para konglomerat pada jaman tersebut. Sistem yang dibangun mengelola informasi kegiatan dan rutinitas dari perusahaan yang berpotensi memiliki data yang besar dalam perkembangannya.

SDLC adalah proses mengembangkan atau mengubah suatu system perangkat lunak dengan menggunakan model-model dan metodologi yang digunakan orang untuk mengembangkan system-system perangkat lunak sebelumnya. (Rosa, 2019) (berdasarkan best practice atau cara-cara yang sudah teruji baik). Seperti halnya proses metamorphosis sempurna pada kupu-kupu yang indah maka dibutuhkan beberapa tahap untuk dilalui, sama halnya juga dengan membuat perangkat lunak yang memiliki tahapan yang dilaluinya agar menghasilkan perangkat lunak yang handal dan berkualitas https://sahabatnesia.com /wp- content/uploads/2020/05 /gambar-metamorfosis- sempurna-dan-tidak- sempurna.jpg

1. Tahapan-tahapan SDLC secara Global Gambar 1 Tahapan pengembangan sistem sdlc waterfall Sumber : Buku Sistem Informasi Akuntansi Aplikasi di Sektor Publik. https://www.researchgate.net/figure/Gambar-1-Tahapan-pengembangan-sistem-sdlc-waterfall-Sumber-Buku-Sistem-Informasi_fig1_341824379

1. Tahapan-tahapan SDLC secara Global 1. Inisiasi (initiations) ditandai dengan pembuatan proposal proyek perangkat lunak 2. Pengembangan Konsep system (system concept development) dengan mendefinisikan lingkup konsep termasuk dokumen lingkup system, analisis manfaat biaya, manejemen rencanam dan pembelajaran kemudahan system. 3. Perencanaan (Planning) mengembangkan rencana manajemen proyek dan dokumen perencanaan lainnya termasuk menyediakan sumber daya yang dibutuhkan untuk memperoleh solusi. 4. Analisis kebutuhan (requirements analysis) khususnya kebutuhan pemakai (user) dan mengembangkan kebutuhan user dengan membuat dokumen kebutuhan fungsional 5. Desain (design) system focus pada bagaimana dapat memenuhi fungsi-fungsi yang dibutuhkan.

1. Tahapan-tahapan SDLC secara Global (lanjutan 6. Pengembangan (Development) untuk mengonversi tahapan desain ke system informasi yang lengkap termasuk bagaimana memperoleh dan melakukan instalasi lingkungan system seperti membuat basis data, pengodean, pengompilasian, perbaikan bug, peninjauan pengujian. 7. Integrasi dan pengujian (integration and test) dalam mendemostrasikan system perangkat lunak bahwa telah memenuhi kebutuhan fungsional. Dengan diarahkan oleh staf penjaminan kualitas (quality assurance) dan user. Tahapan ini menghasilkan dokumen analisis pengujian. 8. Implementasi (Implementation) termasuk persiapan dan implementasi perangkat lunak pada lingkungan produksi dan menjalankan resolusi dari permasalahan yang teridentifikasi dari fase atau tahapan integrase dan pengujian. 9. Operasi dan pemeliharaan (operations and maintenance), untuk mendeskripsikan pekerjaan untuk mengoperasikan dan memelihara sistmen informasi pada lingkungan produksi (user) termasuk didalamnya implementasi akhir dan masuk pada proses peninjauan. 10. Disposisi (disposition) kegiatan ini mendeskripsikan aktifitas akhir dari pengembangan system dan membangun data yang sebenarnya sesuai dengan aktifitas user

B. Model Software Development Life Cycle SDLC memiliki bebarapa model dalam penerapan tahapan prosesnya. “Beberapa model dasar akan dibahas pada subbab berikutnya, selain model-model dasar yang dibahas, masih banyak model-model yang muncul dengan memodifikasi model-model SDLC dasar.”

C. Model Waterfall Model SDLC air terjun (waterfall) sering disebut juga model sekuensial linier (sequential linear) atau alur hidup klasif (classic life cycle). Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengodean, pengujian, dan tahap pendukung (support). Berikut adalah gambar model air terjun: https://repository.bsi.ac.id/index.php/unduh/item/713/File_10-Bab-II-Landasan-Teori.pdf

Adapun metode air terjun menurut Rosa dan Shalahuddin (2019) yaitu: 1. Analisis Kebutuhan Perangkat Lunak Merupakan proses dalam pengumpulan kebutuhan yang dilakukan secara intensif untuk menspesifikasikan rekayasa kebutuhan perangkat lunak dan agar dapat dipahami perancangan system seperti apa yang dibutuhkan oleh pengguna/user. Spesifikasi kebutuhan perangkat lunak pada https://image.slidesharecdn.com/bab4-analisiskebutuhanperangkatlunak1-170912045142/95/rpl-1- tahapan ini diperlukan untuk lama-analisis-kebutuhan-perangkat-lunak-1-5-638.jpg?cb=1505270933 didokumentasikan.

2. Desain https://slideplayer.info/slide/2380887/8/images/2/FASE+PENGEMBANGA Desain perangkat lunak adalah proses multi N+DAN+DESAIN+PERANGKAT+LUNAK.jpg langkah yang fokusnya pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur perangkat lunak, representasi antarmuka, dan prosedur pengkodean. Tahap ini mentranslasikan kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya (pengkodean). Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan.

3. Pembuatan Kode Program Desain harus ditranslasikan ke dalam program perangkat lunak. Hasil dari tahap ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap desain. https://i2.wp.com/si.fst.unair.ac.id/wp- content/uploads/2019/09/bigstock-Programming-Web-Banner- Best-P-258081862.jpg https://www.sekawanmedia.co.id/wp- content/uploads/elementor/thumbs/php-adalah- p1qqdchbe1ve9yaf60k034osmtiir3gi79d98ululc.jpg

4. Pengujian https://w7.pngwing.com/pngs/959/716/png-transparent-usability-testing-software- testing-design-usability-software-testing-technology.png Pengujian ini berfokus kepada perangkat lunak secara dari segi logic dan fungsionalnya serta memastikan bahwa semua bagian telah dilakukan pengujian. Pengujian ini dilakukan untuk meminimalisir kesalahan (error/bug) dan juga memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan oleh user.



5. Pendukung (support) atau Pemeliharaan (maintenance) Tidak menutup kemungkinan sebuah perangkat lunak pasti akan mengalami perubahan ketika sudah dikirimkan ke user. Perubahan ini dapat terjadi jika adanya kesalahan yang muncul dan tidak terdeteksi pada saat melakukan pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru. https://4.bp.blogspot.com/-28j2gDCxajM/W- 9cT189b5I/AAAAAAAADVk/bPWXGSOvV6cdJRFH-v3Qe- 0BC2szXy0dwCLcBGAs/s1600/pemeliharaan%2Bperangkat%2Blunak.jpg

Kelebihan Model Waterfall Memiliki Proses yang urut dan bertahap sehingga kualitas PL akan baik Setiap proses memiliki spesifikasi sendiri, dan setiap tahapan harus terselesaikan sebelum ke tahap selanjutnya Setiap proses tidak dapat saling tumpang tindih Metode ini lebih baik digunakan jika kebutuhan- kebutuhan sudah di ketahui

Kelebihan model waterfall: a. Memiliki proses yang urut dan bertahap, sehingga kualitas sistem/PL yang dihasilkan akan baik. b. Setiap proses memiliiki spesifikasinya sendiri, karena setiap tahap harus terselesaikan dengan lengkap sebelum melanjutkan ke tahap berikutnya. c. Setiap proses tidak dapat saling tumpang tindih. d. Metode ini akan lebih baik digunakan jika kebutuhan-kebutuhan sudah diketahui.

Kekurangan model waterfall: a. Proses yang dilakukan cenderung panjang dan lama, karena proses pengembangan tidak dapat dilakukan berulang sebelum menghasilkan produk. b. Kesalahan kecil pada satu tahapan akan menimbulkan masalah besar jika tidak diketahui sejak awal pengembangan, berakibat pada tahapan selanjutnya c. Biaya penggunaan metode yang cenderung mahal d. Membutuhkan banyak riset dan penelitian pendukung untuk mengembangkan sistem sehingga pelanggan harus sabar karena pembuatan PL baru dimulai pada tahap perancangan. e. Kenyataannya sulit untuk mengikuti aturan sequential, karena iterasi sulit dilakukan dan menyebabkan masalah baru.

Model waterfall adalah model SDLC yang paling sederhana. Model ini hanya cocok untuk pengembangan perangkat lunak dengan spesifikasi yang tidak berubah-ubah.

D. Model Prototipe Sering pelanggan (customer) sudah membayangkan kumpulan kebutuhan yang di inginkan tapi tidak terspesifikasikan secara detail dari segi masukan (input), proses dan luaran(output). Di sisi lain seorang pengembang perangkat lunak harus menspesifikasikan sebuah kebutuhan secara detail dari segi teknis dimana pelanggan sering kurang mengerti mengenai hal teknis tersebut. Prototype adalah pendefinisian sejumlah sasaran PL berdasarkan kebutuhan dan pemahaman secara umum, tetapi tidak bisa mengidentifikasi kebutuhan secara rinci untuk beberapa fungsi dan fitur- fitur. Tujuannya adalah untuk membantu dalam tahap analisis dan desain yang memungkinkan pengguna untuk melihat lebih awal apa yang akan dilakukan sistem, yaitu untuk memfasilitasi validasi. Prototype dapat digunakan sebagai model proses yang berdiri sendiri.

MODEL PROTOTYPE (Lanjutan) Pembuatan prototipe biasanya digunakan sebagai teknik yang dapat diimplementasikan di dalam konteks setiap model proses PL, sehingga membantu stakeholder untuk lebih memahami apa yang akan dikembangkan ketika spesifikasi kebutuhan belum jelas. https://miro.medium.com/max/724/1*0gkasyYO8KkChq0YSOmIPA.png

Model Prototype Sumber: Pressman (2015:45)

Tahapan dalam Model Prototype Dimulai dengan Mengidentifikasi Membuat Prototipe Memberikan Komunikasi Tim Kebutuhan dan Prototipe dan Diserahkan Umpan Balik Pemodelannya PL dengan Sasaran kepada untuk Pelanggan Keseluruhan PL Stakeholder persyaratan lebih untuk di evaluasi lanjut

Tahapan dalam Model Prototype 1. Dimulai dengan dilakukannya komunikasi antara tim pengembang PL dengan pelanggan. 2. Tim pengembang bertemu dengan stakeholder untuk mendefinisikan sasaran keseluruhan PL, mengidentifikasi spesifikasi kebutuhan yang diketahui, dan menggambar- kan definisi lebih jauh pada iterasi selanjutnya. 3. Pembuatan prototipe direncanakan dengan cepat, dan pemodelan dilakukan 4. Prototipe diserahkan kepada stakeholder untuk dievaluasi, dan memberikan umpan balik yang digunakan untuk persyaratan lebih lanjut 5. Iterasi akan terjadi saat prototipe diperbaiki

Manfaat Pengembangan Model Prototype • Membuat Antarmuka pengguna yang dapat diterima • Membuat sistem yang berfungsi meskipun terbatas • Dapat digunakan untuk melatih pengguna sebelum sistem yang lengkap di kirim ke pelanggan • Beberapa teknologi baru akan menyediakan Fasilitas yang dibutuhkan

Manfaat Model Prototype Model prototype dikembangkan dan didemonstrasikan pada awal proses pembangunan PL, sehingga dapat bermanfaat untuk: a. Menghindari kesalahpahaman antara pengembang PL dan pengguna b. Beberapa fasilitas yang hilang mungkin dapat terungkap c. Fasilitas yang sulit digunakan/membingungkan dapat diidentifikasi dan disempurnakan d. Pengembang PL mungkin menemukan persyaratan yang tidak lengkap atau tidak konsisten.

Masalah pada Model Prototype 1. Stakeholder hanya melihat tampilan PL yang akan dipakai tanpa mempedulikan bagaimana kerja sistem, dan pemeliharaan jangka panjang. 2. Perubahan yang dibuat selama pengembangan PL mungkin akan mengubah struktur arsitektur. Oleh karena itu mungkin sulit dan mahal untuk pemeliharaannya. 3. Karakteristik sistem yang penting seperti kinerja, keamanan dan keandalan, mungkin akan diabaikan selama pengembangan PL. 4. Selama tahap pengembangan, prototype akan diubah untuk memenuhi kebutuhan pengguna. kemungkinan perubahan yang dibuat akan tidak terkontrol dan tidak didokumentasikan dengan baik.

Contoh aplikasi dengan model prototipe CONTOH WEB PROTOTYPE

E. Model Spiral • Model Spiral merupakan suatu model proses PL evolusioner yang menggabungkan pendekatan prototyping yang bersifat iteratif (berulang-ulang) dengan aspek yang terkontrol dan sistematis pada model waterfall. • Model pengembangan spiral adalah model proses PL yang dikendalikan risiko yang digunakan untuk memandu para stakeholder untuk secara bersamaan merekayasa sistem yang bernuansa PL.

• Model spiral menggunakan prototipe sebagai mekanisme pengurangan risiko. • Model spiral menggunakan pendekatan langkah demi langkah (waterfall) yang sistematis tetapi menggabungkannya ke dalam kerangka iteratif yang lebih realistis mencerminkan dunia nyata. • Model spiral adalah pendekatan realistis untuk pengembangan sistem berskala besar.

Model Spiral Sumber: Pressman (2015:48)

Penjelasan gambar: a. Proses evolusioner ini dimulai dari titik tengah, ke bagian luar spiral searah jarum jam. b. Risiko PL akan dipertimbangkan saat masing-masing gerakan dibuat dan titik pengukuran dicatat setiap saat langkah-langkah evolusioner dilewati. c. Lintasan pertama di sekitar spiral dapat menghasilkan spesifikasi produk, putaran berikutnya di sekitar spiral mungkin digunakan untuk mengembangkan suatu prototipe dan pada lintasan berikutnya secara progresif bergerak ke versi PL yang semakin canggih.

Penjelasan gambar (lanjutan) d. Setiap melewati lintasan menghasilkan penyesuaian pada perencanaan proyek. e. Biaya dan jadwal disesuaikan berdasarkan umpan balik yang berasal dari pelanggan setelah pengiriman produk. f. Selain itu, dilakukan penyesuaian jumlah iterasi (perulangan) yang direncanakan untuk menyelesaikan produk PL.

Keuntungan Model Spriral a. Pendekatan yang dikendalikan risiko menghindari banyak kesulitan. b. Mengakomodasi persiapan untuk evolusioner siklus hidup, pertumbuhan, dan perubahan pada produk PL. c. Menyediakan mekanisme untuk tujuan kualitas dan PL gabungan ke pengembangan produk PL d. Mempunyai fokus untuk mengeliminasi kesalahan (error) e. Menyediakan pendekatan terpisah untuk pengembangan dan pemasangan PL f. Menyediakan keranga kerja aktif untuk pengembangan sistem hardware dan software yang terintegrasi.

Kerugian Model Spriral a. Memerlukan penyesuaian dengan PL yang menitik beratkan pada kontrol dan titik permasalahan yang merupakan keunggulan model waterfall. b. Berdasarkan keahlian manajemen risiko yang memerlukan penaksiran risiko yang masuk akal, akan menimbulkan masalah yang lebih besar jika risiko mayor tidak ditemukan c. Memerlukan kebutuhan untuk penelitian lebih lanjut terhadap langkah- langkah spiral khususnya untuk area analisis risiko.

F. Model Rapid Application Development (RAD) • RAD adalah teknik berbasis tim yang mempercepat pengembangan SI dan menghasilkan fungsi-fungsi SI. • RAD menggunakan pendekatan kelompok • Produk akhir RAD adalah sistem informasi baru. • RAD adalah metodologi yang lengkap, dengan 4 fase siklus hidup yang sejajar dengan fase SDLC tradisional. • Penggunaan RAD untuk mengurangi biaya dan waktu pengembangan, dan meningkatkan probabilitas keberhasilan

MODEL RAD (Lanjutan) • RAD sangat bergantung pada prototipe dan keterlibatan pengguna. • Berdasarkan input pengguna, prototipe dimodifikasi dan proses interaktif berlanjut sampai sistem benar-benar dikembangkan dan pengguna puas. • Interaksi berkelanjutan antara fase desain dan konstruksi pengguna • Tim proyek menggunakan CASE tools untuk membangun prototipe dan membuat aliran dokumentasi yang berkelanjutan.

Fase dan Aktivitas RAD 1 23 4 Sumber: Shelly (2012: 148)

Fase RAD (Lanjutan) 1. REQUIREMENTS PLANNING • Fase ini menggabungkan elemen-elemen perencanaan sistem dan fase analisis SDLC. • Pengguna, manajer, dan anggota staf IT mendiskusikan dan menyetujui kebutuhan bisnis, ruang lingkup proyek, kendala, dan persyaratan sistem. • Fase ini berakhir ketika tim menyetujui masalah- masalah utama dan mendapatkan izin manajemen untuk melanjutkan.

Fase RAD (Lanjutan) 2. USER DESIGN • Selama fase ini, pengguna berinteraksi dengan sistem analis kemudian mengembangkan model dan prototipe yang mewakili semua input, proses, output. • Tim/subkelompok RAD biasanya menggunakan kombinasi teknik JAD (Joint Application Development) dan CASE tools untuk menerjemahkan kebutuhan pengguna ke dalam model. • Desain pengguna adalah kontinyu, proses interaktif memungkinkan pengguna untuk memahami, memodifikasi, dan akhirnya menyetujui model kerja sistem yang memenuhi kebutuhan mereka.

Fase RAD (Lanjutan) 3. CONSTRUCTION • Fase konstruksi berfokus pada tugas pengembangan program dan aplikasi yang mirip dengan SDLC. • Pengguna terus berpartisipasi dan masih dapat menyarankan perubahan atau peningkatan saat tampilan atau laporan aktual dikembangkan.

Fase RAD (Lanjutan) 4. CUTOVER • Merupakan fase peralihan, termasuk konversi data, pengujian, pergantian ke sistem baru, dan pelatihan pengguna. • Dibandingkan dengan metode tradisional, seluruh proses dikompresi. Akibatnya, sistem baru dibangun, dikirim, dan ditempatkan dalam operasi yang lebih cepat (agile).

Tujuan RAD a. Mengurangi waktu dan biaya pengembangan dengan melibatkan pengguna dalam setiap fase pengembangan sistem. b. Membuat modifikasi yang diperlukan dengan cepat, seiring dengan perkembangan desain. c. Membatasi biaya perubahan yang biasanya terjadi dalam jadwal pengembangan yang berlarut-larut. d. Membutuhkan sistem informasi untuk mendukung fungsi bisnis baru, karena digerakkan oleh pengguna. e. Dengan input pengguna, membantu tim pengembangan merancang sistem yang membutuhkan antarmuka pengguna yang interaktif atau kompleks.

Keuntungan dan Kerugian RAD Keuntungan utama: • sistem dapat dikembangkan lebih cepat dengan penghematan biaya yang signifikan Kerugian: • Menekankan mekanisme sistem itu sendiri dan tidak menekankan kebutuhan strategis bisnis perusahaan. • Baik untuk jangka pendek. • Memungkinkan lebih sedikit waktu untuk mengembangkan kualitas, konsistensi, & standar desain. • RAD dapat menjadi alternatif yang menarik, jika suatu organisasi memahami risiko yang mungkin terjadi

G. Model Scrum • Scrum adalah sebuah proses yang agile (tangkas) untuk menangani produk yang kompleks. • Scrum digunakan untuk memandu kegiatan pengembangan dalam suatu proses yang mencakup kerangka kerja seperti: kebutuhan, analisis, desain, evolusi, dan pengiriman. • Scrum menekankan penggunaan seperangkat pola proses PL yang telah terbukti efektif untuk proyek dengan jadwal yang ketat, perubahan kebutuhan, dan kekritisan bisnis


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook