Siklus Pengembangan Perangkat Lunak atau Software Development Life Cycle (SDLC)

 Hai Kawan-Kawan , assalamualaikum...

Bagaimana kabar nya hari ini ? semoga kalian sehat selalu ya

Sebelum mulai, kita saling mengenal dulu ya. halo, Nama saya Rasya Amanda Nuruddin, biasa disapa Rasya. Salam kenal kawan-kawan. Mari kita mengenal software development life cycle secara bersama-sama.

Proses Pengembangan Perangkat Lunak 

Dalam Pengembangan software adalah sebuah proses pembuatan suatu perangkat. mengembangkan perangkat lunak menggunakan metodologi SDLC yang meningkatkan perangkat lunak terbaru atau meningkatkan perangkat lunak yang ada dapat dianalisis, dipercepat, dan menciptakan presisi yang diperlukan dengan tepat solusi apa yang perlu dibuat agar mendapat perangkat lunak yang berkualitas.

Menurut standar, proses pengembangan perangkat lunak melakukan tindakan :
1. Pekerjaan pendahuluan - model siklus hidup, standar, pemilihan metodologi dan alat pengembangan, dan pembuatan rencana kerja.
2. Analisis kebutuhan adalah proses memahami apa yang perlu dilakukan untuk membuat sistem bekerja, dan mencari tahu bagaimana memenuhi kebutuhan tersebut. Dalam proses ini, kami mempelajari apa yang dibutuhkan pengguna, serta persyaratan keandalan dan keamanan untuk sistem. Kami juga memperhitungkan semua antarmuka eksternal yang dibutuhkan sistem.
3. Desain arsitektur sistem menentukan jenis peralatan, perangkat lunak, dan personel layanan operasi yang perlu menggunakan sistem.
4. Analisis persyaratan adalah proses memahami apa yang dibutuhkan produk perangkat lunak agar berguna. Ini termasuk pemahaman bagaimana produk akan berfungsi, komponen apa yang akan digunakan, bagaimana antarmuka dengan perangkat lunak lain, persyaratan keandalan dan keamanan apa yang diperlukan, dan bagaimana produk harus dirancang agar mudah digunakan.
5. Desain arsitektur perangkat lunak adalah proses pembuatan struktur untuk program perangkat lunak dan mendokumentasikan berbagai bagiannya. Ini termasuk mengembangkan dokumen tentang antarmuka program dengan program dan orang lain, serta merencanakan pengujian dan integrasi.
6. Merancang perangkat lunak melibatkan pembuatan deskripsi terperinci dari berbagai komponen dan bagaimana mereka berinteraksi satu sama lain. Anda juga perlu memperbarui dokumentasi pengguna, mengembangkan dan mendokumentasikan persyaratan pengujian dan rencana pengujian, serta memperbarui rencana integrasi komponen sesuai kebutuhan.
7. Pengkodean dan pengujian adalah bagian penting dari pengembangan perangkat lunak. Ini melibatkan pengembangan dan pendokumentasian setiap komponen, serta prosedur pengujian dan data. Ini dilakukan untuk memastikan bahwa perangkat lunak seakurat mungkin dan terintegrasi dengan baik dengan perangkat lunak lain.
8. Integrasi perangkat lunak adalah proses menyatukan perangkat lunak yang berbeda untuk membuat produk yang lengkap. Pengujian integrasi adalah cara untuk memastikan bahwa semua bagian perangkat lunak bekerja sama dengan benar. Ini dilakukan sebelum perangkat lunak dirilis ke publik.
9. Pengujian kualifikasi perangkat lunak adalah proses pengujian perangkat lunak untuk memastikannya memenuhi persyaratan pelanggan, dan siap untuk digunakan. Selain itu, dokumentasi teknis pengguna diperiksa untuk memastikannya lengkap dan akurat.
10. Integrasi sistem adalah ketika semua bagian sistem yang berbeda disatukan. Ini dapat mencakup perangkat lunak, perangkat keras, dan komponen lain yang diperlukan untuk membuat sistem berfungsi.
11. Pengujian kualifikasi sistem adalah proses yang memeriksa untuk memastikan sistem memenuhi persyaratan yang ditentukan dalam dokumentasi. Itu juga memeriksa desain dan kelengkapan dokumentasi.
12. Saat Anda menginstal perangkat lunak di komputer, Anda memeriksa apakah perangkat lunak berfungsi dengan benar dan kemudian memperbaruinya.
13. Perangkat lunak dievaluasi dan hasilnya diterima. Perangkat lunak ini kemudian ditransfer ke pelanggan.

Software Development Life Cycle (SDLC)




SDLC adalah siklus atau proses untuk pembuatan suatu sistem informasi untuk memecahkan suatu masalah dan untuk menciptakan sistem kualitas yang memenuhi kebutuhan pengguna atau tujuan tertentu untuk sistem tersebut. 

SDLC memiliki tahap pengembangan sistem perangkat lunak, yang terdiri dari tahap perencanaan (planning), analisis (analysis), desain (design), implementasi (implementation), pengujian (testing), dan pemeliharaan (maintenance).Setiap tahapan memiliki serangkaian tindakan berdasarkan teknik dapat menghasilkan dokumen spesifik yang menjelaskan dokumen yang berbeda dalam elemen sistem.

Proses Pengembangan Perangkat Lunak 

1. Planning

Rencana yang biasanya memiliki alasan yang lebih jelas mengapa sistem dibuat dan perangkat lunak bekerja dalam jangka waktu tertentu bersama dengan tim untuk mengembangkan perangkat lunak. tahap ini tim juga mengumpulkan informasi yang diperlukan untuk kepentingan pengembangan software dan tim juga membuat Struktur tim, jadwal, anggaran dan keamanan suatu informasi yang akan digunakan untuk keperluan pengembangan software.

2. Analysis

Pada fase ini, tim menganalisis persyaratan fungsional sistem Analisis ini diperlukan pada fase SDLC untuk memastikan bahwa produk memenuhi harapan pelanggan. Tingkat perencanaan mengikuti proses analitis yang menekankan bagaimana, siapa, dan di mana sistem dibangun, termasuk arsitektur, antarmuka pengguna internal, dan algoritma. Perangkat Hasil akhir yaitu kekuatan kelemahan sistem, fitur sistem dan pembaharuan yang berlaku.

3. Design

Desain lebih menekankan pada operasi sistem, implementasi dan pengujian unit program. Pada tahap ini, prototipe dan beberapa kiriman lainnya dihasilkan, termasuk dokumen yang berisi desain, model, dan komponen penting yang diperlukan untuk menyelesaikan pekerjaan
  • Arsitektur : menggunakan bahasa pemrograman untuk desain software secara keseluruhan.
  • Antarmuka Pengguna (User Interface) : Menentukan bagaimana pengguna berinteraksi dengan perangkat lunak dan bagaimana perangkat lunak bereaksi.
  • Platform: Dimana tempat dapat menjalankan perangkat lunak seperti Android, iOS, Linux dan lain-lain.
  • Keamanan : Tindakan untuk melindungi perangkat lunak sistem, seperti perlindungan kata sandi
4. Implementasi 

Fase ini juga disebut fase penyebaran. Tujuan fase ini adalah untuk menerapkan perangkat lunak ke dalam produksi sehingga pengguna dapat mulai menggunakannya. Fase ini mencakup instalasi sebenarnya dari sistem baru. 

5. Pengujian(testing)

Tim QA  menguji setiap bagian perangkat lunak untuk memastikan bahwa tidak ada bug, kesalahan,  dalam sistem. Ketika ditemukan masalah pada perangkat lunak pengembangan, tim QA melaporkannya ke tim pengembangan agar perbaikan dapat dilakukan Proses ini berlanjut sampai perangkat lunak bebas dari kesalahan, stabil, dan berfungsi seperti yang diharapkan.

6, Pemeliharaan (maintance)

Selama fase ini, tim melakukan pemeliharaan dan pembaruan sistem secara berkala untuk menjaga kinerja perangkat lunak tetap optimal.
aktivitas yang dilakukan selama pemeliharaan :
  • Perbaikan bug: perbaikan kesalahan yang terdapat pada sebuah sistem dan membuat sistem berjalan tidak normal ketika dilaporkan.
  • Upgrade sistem : Sistem baru meningkatkan kinerja perangkat lunak.
  • Peningkatan fitur : Tambahkan fitur dan fungsi ke perangkat lunak yang dikembangkan.

Fungsi Software Development Life Cycle 

  • Mendukung komunikasi antar tim pengembangan dalam pengembangan aplikasi
  • Alokasi peran serta tanggung jawab yang jelas antara tim yang bekerja sama untuk mengerjakan proyek.
  • memberikan suatu gambaran yang jelas tentang pemasukan dan pengeluaran dari satu fase ke fase berikutnya.

Model Pengembangan Perangkat Lunak

1. Model Waterfall

 Memberikan secara sistematis dan berurutan untuk mengembangan software yang dimulai dari sistem dan melewati fase analisis, desain, kode, pengujian, dan pemeliharaan.


tahapan pengembangan model waterfall:
  • Sistem/Teknologi Informasi dan Pemodelan
 Membangun semua elemen sistem dan memilih bahan untuk mengembangkan perangkat lunak mengingat hubungan antara perangkat keras, pengguna dan database. 
  • Analisis untuk kebutuhan software
Persyaratan sistem dianalisis dan diteliti adalah informasi, fungsi yang diperlukan untuk kinerja, dan antarmuka. Analisis dan hasil penelitian didokumentasikan dan dipresentasikan kepada klien.
  • Desain
Proses desain menerjemahkan persyaratan desain pada software yang diharapkan sebelum  akhir Proses pengkodean fokus pada struktur data, arsitektur software, representasi interface, dan detail algoritma prosedural.
  • Pengkodean
Pengkodean adalah proses menggunakan bahasa pemrograman untuk mengubah konsep desain menjadi bentuk yang dapat dimengerti mesin.
  • Pengujian
Metode ini adalah menulis kode sumber sebenarnya. Apa yang diimplementasikan dimulai dengan model, logika bisnis, dan diakhiri dengan integrasi layanan yang didefinisikan pada fase sebelumnya.
  • Pemeliharaan
- Corrective Maintenance :  Persyaratan untuk mengidentifikasi, mengisolasi, dan memperbaiki kesalahan untuk memulihkan perangkat, mesin, atau sistem ke keadaan operasional sehingga dapat menjalankan fungsi yang diinginkan.
- Adaptive Maintenance :  Implementasi perubahan pada bagian sistem yang  dipengaruhi oleh perubahan pada bagian sistem yang lain. Pemeliharaan adaptif terdiri dari mengadaptasi perangkat lunak untuk mengubah lingkungan seperti perangkat keras atau sistem operasi.
- Perfektive Maintenance: Pemeliharaan penuh terutama berarti penerapan kebutuhan pengguna baru atau yang berubah Pemeliharaan penuh melibatkan pembuatan perbaikan operasional pada sistem  untuk meningkatkan kinerja sistem, bahkan jika perubahan itu tidak diusulkan secara tidak sengaja.

2. Model Prototype

Prototipe memungkinkan pelanggan untuk berbicara langsung dengan tim pengembangan (developer) untuk meningkatkan persepsi atau pemahaman terhadap sistem yang dibangun. Agar tidak terjadi kesalahpahaman nantinya saat membuat sistem/aplikasi/software.


Tahap prototipe meliputi:
  • Mengumpulkan kebutuhan
Persyaratan sistem didefinisikan secara detail Selama berlangsung nya proses, klien dan tim pengembangan bertemu untuk membahas detail sistem dan apa yang diinginkan pengguna.
  • Membuat prototipe
Membangun prototipe dengan membuat desain yang berfokus pada layanan pelanggan. Pengembangan prototipe aktual untuk menjadi referensi bagi tim pemrograman untuk membuat program dan aplikasi.
  • Evaluasi prototipe
Suatu sistem yang dibuat dalam bentuk prototipe dipresentasikan kepada pelanggan untuk dievaluasi. Selain itu, Anda memberikan komentar dan saran atas yang telah dihasilkan.
  •  Sistem pengkodean 
Pada fase ini, prototipe yang telah disepakati untuk diterjemahkan ke bahasa pemrograman yang sesuai.
  •  menguji sistem
Ketika sistem telah menjadi  perangkat lunak siap pakai, maka dilakukan proses pengujian.
  • Evaluasi sistem
Pelanggan mengevaluasi software setelah selesai memenuhi harapan mereka. Jika demikian, proses berlanjut ke tahap berikutnya, tetapi mengulangi tahap sebelumnya jika perangkat lunak yang telah selesai tidak memenuhi harapan.
  • Sistem penggunaan
Model prototipe ini menunjukkan bahwa masalah tidak terstruktur dengan baik, persyaratan pengguna berubah dari waktu ke waktu atau memiliki fluktuasi yang tidak terpikirkan, interaksi pengguna merupakan persyaratan mutlak, dan tidak ada waktu yang tersedia, sangat cocok untuk aplikasi dalam situasi berisiko tinggi. sangat terbatas dan membutuhkan solusi /penyelesaian segera.

3. Model Rapid Aplication Development (RAD)


Model RAD ketika pelanggan mengetahui kebutuhan mereka, pengguna terlibat selama siklus hidup, merencanakan proyek, memberikan fungsi secara bertahap, tidak memerlukan kinerja tinggi, memiliki  risiko teknis rendah dan bersifat standar.

tahapan proses pengembangan:
  • Bisnis Modeling
Model bisnis adalah model terstruktur yang seperti cetak biru untuk produk akhir yang akan dikembangkan Ini memberikan struktur dan dinamika desain. Itu juga membentuk dasar untuk produk akhir Dengan bantuan pemodelan bisnis, keadaan perusahaan saat ini dan masa depan direncanakan.
  • Data Modeling
Menganalisis informasi ke dalam kelompok berbeda yang berguna untuk bisnis Kualitas setiap kumpulan data telah diperiksa dengan cermat dan dijelaskan secara akurat.
  • Proses Modeling
Arus informasi yang didefinisikan dalam fase pemodelan data diubah untuk mencapai arus informasi yang diperlukan untuk mengimplementasikan fungsi bisnis. Layar pemrosesan dibuat untuk menambahkan, memodifikasi, menghapus, atau mengambil objek data.
  • Aplication Generation
Pada tahap pengembangan aplikasi, semua data yang terkumpul diberi kode dan sistem dibangun untuk membuat prototipe. Model data yang dibuat diubah menjadi prototipe nyata yang dapat diuji pada langkah selanjutnya.
  • Testing dan Turnover 
Fase pengujian dan daur ulang memungkinkan  prototipe yang dibuat untuk diuji sepenuhnya dalam waktu yang lebih singkat. Setiap model diuji secara individual untuk mengidentifikasi dan menyesuaikan komponen guna menciptakan produk yang paling efisien. Karena sebagian besar elemen sudah diuji sebelumnya, seharusnya tidak ada masalah besar dengan prototipe.

Kesimpulan 

1.SDLC adalah siklus atau proses untuk pembuatan suatu sistem informasi untuk memecahkan suatu masalah dan untuk menciptakan sistem kualitas yang memenuhi kebutuhan pengguna atau tujuan tertentu untuk sistem tersebut.
2. SDLC memiliki 6 Tahapan yaitu : perencanaan (planning), analisis (analysis), desain (design), implementasi (implementation), pengujian (testing), dan pemeliharaan (maintenance).
3. Software development life cyle memiliki fungsi salah satunya untuk berkomunikasi dengan tim pengembangan agar dalam melakukan proses develoment software dapat berjalan dengan baik.
4.Model Pengembangan perangkat lunak : 
- Model Waterfall  memiliki tahapan : Sistem/Teknologi Informasi dan Pemodelan, Analisis untuk kebutuhan software, Desain , pengkodean , pengujian, dan pemeliharaan.
- Model Prototype memiliki tahapan : Mengumpulkan kebutuhan, Membuat prototipe, Evaluasi prototipe, sistem pengodean, menguji system, evaluasi sistem, sistem penggunaan/
- Model Rapid Aplication Development :  Bisnis Modeling, Data modeling, Proses modeling, application generator, testing dan turnover.

referensi

1. Feradhita NKD_ https://www.logique.co.id/blog/2021/04/28/tahapan-sdlc/ [webiste] diakses 23 Februari 2023
4.Reza Fauzan _ https://eltikom.poliban.ac.id/index.php/eltikom/article/download/1/1 [website] diakses tanggal 23 februari 2023.
5.Yudi Irawan Chandra, Diyah Ruri Irawati, Susi Widayati, Kristina Airinia _ https://www.researchgate.net/publication/365212386_Rancang_Bangun_Aplikasi_Undangan_Pernikahan_Online_Menggunakan_Metode_Waterfall_Berbasis_Web_Mobile [website] diakses tanggal 24 Februari 2023 








Komentar