Lompat ke konten Lompat ke sidebar Lompat ke footer

Konsep Dasar Rekayasa Perangkat Lunak

Assalamualaikum wr. wb, Konsep Dasar Perangkat Lunak (RPL ) Pada kesempatan kali ini admin akan menyampaikan pembahasan mengenai konsep dasar rekayasa perangkat lunak atau dapat dikatakan rekayasa perangkat lunak.

Pada artikel kali ini kita akan mempelajari konsep dasar rekayasa perangkat lunak ini mulai dari tujuan rekayasa perangkat lunak, masalah - masalah rekayasa perangkat lunak , Siklus hidup dan proses prangkat lunak. tentunya banyak akan akan kita bahas pada pembahasan kali ini mengenai Konsep Dasar Rekayasa Perangkat Lunak.

Silahkan teman - teman simak dan pahami pembahasan dibawah ini:

Pertama kita akan membahasa mengenai pengertian dari Rekayasa Perangkat Lunak (RPL):
berikut ini pengertian dari rekayasa perangkat lunak:

Rekayasa Perangkat Lunak merupakan suatu bidang profesi yang tentunya mendalami mengenai cara- cara mengembangkan perangkat lunak termasuk dari pembuatan, manajemen organisasi penembangan perangkat lunak, pemeliharaan serta manajemen kualitas.

Rekayasa Perangkat Lunak juga dapat diartikan sebagai pengubahasan perangkat lunak itu sendiri yang bertujuan untuk memelihara, mengembangkan  serta membangun kembali dengan menggunakan printsip yang terdapat dalam rekayasa untuk menghasilkan perangkat lunak yang tentunya dapat bekerja lebih efisien serta ufektif untuk penggunanya.

Keriteria yang tentunya dapat digunakan sebagai acuan kita dalam merekayasa perangkat lunak diantaranya adalah:

  1. Tentunya perangkat lunak harus dapat terus dirawat atau dipelihara (Maintainability)
  2. Tentunya perangkat yang dikembangkan harus mengikuti perkembangan teknologi (Dependability)
  3. Tentunya sistem yang dibuat pada perangkat lunak harus mengikuti keingginan penggunanya (Robust) 
  4. Mempunyai efektifitas serta efisiensi dalam menggunakan suatu energi serta penggunaannya.
  5. Tentunya dapat memenuhi kebutuhan yang diinginkan (usability)
Untuk penjelasan lebih lengkap mengenai Konsep Dasar Rekayasa Perangkat Lunak, teman- teman dapat membaca pembahasan dibawah ini.

1. Tujuan Rekayasa Perangkat Lunak 

Tujuan dari rekayasa perangkat lunak ini tentunya untuk menghasilkan sebuah perangkat lunak yang berkualitas. Yang dapat dimaksud dengan berkualitas tentunya dapat kita lihat dari tiga sisi. yaitu sisi sponsor (individu atau suatu organisasi yang tentunya telah mengeluarkan atau memberikan biaya dalam pembangunan perangkat lunak), sisi pemakai (dimaksudkan kepada siapa saja yang menggunakan perangkat lunak tersebut), sisi modifier/ maintainer (tentunya seseorang yang memelihara serta memodifikasi perangkat lunak tersebut).  Untuk lebih jelasnya silahkan teman- teman simak dan pahami pembahasan dibawah ini:

Sisi sponsor:
Tujuan utama dari sponsor ini ialah untuk menghasilkan ataupun menghemat biaya dalam keuangan. Sponsor tersebut ingin menggunakan perangkat lunak yang telah dibuat tersebut untuk dapat meningkatkan produktifitas organisasi. Tentunya juga sponsor mengharapkan untuk dapat memperoleh penghasilan dari sebuah layanan dengan  biaya yang lebih rentah tetapi juga masuk dalam akal kita, karena itulah pada sistem yang dibuat harus handal, efisien dan fleksibel. Selain itu ada biaya dari pemeliharaan, modifikasi serta peninggkatan dari suatu sistem yang telah dibuat tersebut harus serendah mungkin 

Sisi Pemakai:
Bagi pemakai sistem perangkat lunak merupakan alat untuk dapat membantu menyelesaikan tugas- tugas ataupun suatu permasalahan. Tentunya dari itulah perangkat lunak harus dapat menyediakan suatu fungsi- fungsi yang dapat dibutuhan oleh para pemakainya. Sistem perangkat lunak juga tentunya harus handal dan efisien, perangkat lunak juga tentunya harus dapat menghasilkan output yang tentunya konsisten, Selain itu juga pemakai harus merasa perangkat lunak yang sudah dibuat muadah untuk di gunakan dan dipelajari  serta mudah untuk diingat.

Sisi Maintainer/ Modifier:
Tentunya yang diinginkan oleh modifier atau maintainer adalah system perangkat lunak tersebut memiliki sangat sedikit error saat diuji coba pada penginstallan permana (catatan: tentunya kita tahu sangat kecil kemungkinan untuk dapat menghasilkan perangkat lunak yang mencapai 100% bebas dari masalah error atau bug). Selain itu juga perangkat lunak tersebut tentunya harus terdomumenatasi dengan sangat baik. Script ataupun Source code nya juga harus mudah untuk dibaca, tersetruktur serta dirancang dengan baik serta bersifat modular.

2. Masalah - Masalah Rekayasa Perangkat Lunak

  • Perangkat lunak yang tentunya telah selasai dalam pembuatannya dan sudah diserahkan (delivered) tetapi oleh penggunanya tidak digunakan (47%).
  • Pengguna atau user sudah melakukan pembayaran untuk perangkat lunak tersebut namun tidak pernah selesai dan diserahkan (29.7%)
  • Perangkar lunak tersebut digunakan setelah dilakukannya modifikasi (3%).
  • Pada perangkat lunak tersebut digunakan sebagaimana mestinya (2%)
Selain itu juga tentunya ada faktor pendukung dari kehadiran rekayasa perangkat lunak ini yaitu:
  • Ketidak mampuannya dalam memprediksi waktu, biaya dan usaha dalam pengembangan suatu perangkat lunak.
  • Perangkat lunak memiliki kualitas yang kurang baik atau buruk 
  • Terdapat perubahasan perbandingan (rasio) harga pada perangkat lunak dan perangkat keras.
  • Kemajuan akan teknologi perangkat keras.
  • Kemajuan akan teknik perangkat lunak
  • Mempunyai kebuatuhan yang secara signifikan meningkat terhadap perangkat lunak.
  • Kebutuhan dari perangkat lunak yang tentunya lebih besar serta kompleks.

3. Produk Dan Proses

Mengembangkan Suatu Peran Perangkat Lunak
  • Pada tahun 1980 an perangkat lunak ini belum dikenal peranannya, bahkan menjadi suatu bahan tertawaan. Hal ini dikarenakan pada awal diciptakannya, kecepatan dari perangkat lunak ini masih sangat lambat, sehingga tentunya masih kalah cepat jika dibandingkan dengan kecepatan pengolahan angka dengan menggunakan sempoa ataupun kalkulator.
  • Tetapi pada masa sekarang ini menjadi mesing yang mengendalikan pengambilan keputusan dan tentunya sangat erat kaitannya dengan berbagai bidang antara lain:
    • Transportasi
    • Medis
    • Telekimunikasi
    • Militer
    • Proses industri
    • Hiburan
Tentunya ada dua perang yang dimiliki:
  1. Sebagai produk: Perangkat lunak ini dapat mengantarkan potensi dari perhitungan yang dibangun oleh perangkat lunak sebuah komputer. Tidak memperdulikan apakah perangkat lunak ada didalam sebuah telepon seluler ataukah beroprasi dalam komputer mainframe, perangkat lunak ini juga dapat kita sebut sebagai transformer informasi yang tentunya memproduksi, mengatur, memodifikasi, menampilkan atau memancarkan informasi serta memperoleh informasi. 
  2. Sebagai kendaraan produksi : Sebagai dasar untuk dapat mengontrol komputer seperti halnya system operasi, jaringan yang digunakan untuk komunikasi informasi dan penciptaan serta control dari program- program lainnya.
Peran pada perangkat komputer ini tentunya mengalamo pertubahasan penting dan berkembang secara dramatis selama paruh abad 20 seperti untuk unju kerja perangkat keras, perubahan- perubahasan besar pada arsitektur komputer, pertambahasan yang sangat pesat pada memori maupun kapasitas penyimpana, sera cariasi pilihan dari input maupun output yang luas.

Era ketiga mempunyai tanda dengan munculnya:
  • Multicomputer atau system reedistribusi
  • Masing- masing dapat melakukan fungsi secara berkomunikasi dan konkuren satu dengan yang lainnya.
  • Dapat menambah kompleksitas pada system berbasis komputer
  • Menerima permintaan akan pengembangan perangkat lunak dalam bidang jaringan local maupun global, pada jaringan komunikasi digital serta pada banwidth yang meningkat tinggi.
  • Dapat ditandai dengan adanya kehadiran sera penyebaran pemakaian microprocessor
Era ke empat:
  • Tentunya pengguna semakin jauh dari computer secara individual ataupun pemograman.
  • Dapat menuju kepada pengaruh kolektif dari komputer serta perangkat lunak.
  • Mempunyai mesin pada dekstop yang kuat
  • Mempunyai sistem operasi yang lebih modern dan canggih
  • Tersedia untuk jaringan local maupun global
  • Pada arsitektur berubah cepat tentunya dari lingkungan mainframe yang terpusat ke suatu lingkungan client atau server yang desentralisasi.

3. Proses Perangkat Lunak

Pada proses perangkat lunak tentunya sangat rumit serta seperti halnya proses intelektual. yang tentunya bergantung kepada penilaian manusia. Karena tentunya dibutuhkan penilaian serta kreatifitas, keberhasilan suatu usaha untuk mengotomasikan proses perangkat lunak itu menjadi terbatas.

Tahapan - tahapan proses perangkat lunak, adalah:
  • Rekayasa
  • Perancangan dan analisa
  • Pengembangan pada perangkat lunak
  • Pasca produksi
Definisi Proses:
Analisa serta definisi persyaratan. Suatu pelayanan, batasan serta tujuan untuk sistem yang ditentukan melalui konsultasi dengan pengguna sistem. Pada perancangan sistem serta perangkat lunak. Proses yang terdpat dalam perancangan sistem membagi persyaratannya kedalam sistem perangkat keras ataupun pada sistem perangkat lunak. Kegiatan ini tentunya dapat menentukan arsitektur pada sistem secara kesuluruhan. pengujian serta implementasi unit. Pada tahapan ini pula, perancangan sebuah perangkat lunak dapat direalisasikan sebagai serangkatan program ataupun sebagai unit program.

Integrasi serta pengujian pada sistem. Program individual ataupun unit program dapat diintegrasikan serta diuji sebagai sistem ang lengkap untuk dapat menjamin bahwa persyaratan dalam sistem.


4. Teori dalam Siklus Hidup - Waterfall

Tentunya siklus hidup yang paling terkenal dalam dunia Rekayasa Perangkat Lunak yaitu model waterfall , Waterfall model ini diciptakan pertama kalinya oleh seorang yang bernama William Royce pada tahun 1970 serta mulai dapat dikenal karena logika fase (tingkatan , tahapan, masa).

Pada waterfall ini tentunya memiliki definisi bahwa sebuah proses hidup perangkat lunak serta memiliki proses yang linear dan sequensial.

Waterfall life Cycle
2. Rapid Aplication Development (RAD)
RAD ini merupakan metodelogi perancangan suatu sistem dengan menggunakan flekwensi ataupun rentang waktu yang tentunya ditetapkan jaraknya sesuai dengan suatu perangkat lunak yang dikembangkan.

3. Prototype
prototype merupakan metodelogi suatu perancangan system yang evolusioner dimana dalam suatu proses pengembangan membutuhkan kemampuan dalam tingkat mahir ataupun yang tentunya telah memahami permasalahan tentunya dalam kegiatan perancangan system dengan pengalaman serta keilmuan yang tentunya lebih baik.

4. Spiral
Metodologi spiral ini merupakan suatu kategori evolusioner yang tentunya membutuhkan kemampuan menganalisa suatu permasalahan yang lebih komplek secara battom up.


5. Spesifikasi Kebutuhan Perangkat Lunak

Tentunya pada proses kegiatan analisis sistem perencanaan proyek (Project Planning) ini merupakan awal dari serangkaian aktivitas secara kolektif dari sebuah proses Managemen proyek Perangkat lunak yaitu:
  • Yang pertama dalam proses perencanaan ini adalah Estimation (perkiraan)
  • Bertujuan untuk melihat kondisi umum ke depan
  • Siap menerima kondisi yang berada dalam tingkat ketidak pastian.
  • Estimasi menjadi dasar bagian semua aktivitas perencanaan proyek yang lain, dan
  • Perencanaan proyek dapat memberikan sebuah peta jalan untuk kesuksesnya Rekayasa
  • Perangkat Lunak
tentunya dalam mendapatkan data kita harus melakukan beberapa kegiatan diantaranya ialah:
  1. Observasi
  2. Interview
  3. Kuisioner
  4. Korespindensi
OBSERVASI PADA ESTIMASI
Harapan Ekesekutif akan persyaratan seorang calon manajer proyek :
  • Memiliki kemampuan untuk mengetahui ketidakberesan apa yang akan terjadi sebelum hal itu benar-benar terjadi
  • Memiliki keberanian untuk memperkirakan kapan mendung akan datang
1. Yang Harus Dihindari
Hindari hal-hal berikut saat pembentukan SRS
  1. Over specification (merupakan penjelasan berlebih serta berulang-ulang sehingga membuat tidak jelas)
  2. Tindakan unconcistency
  3. Ambiguity dalam kata atau kalimat
  4. Menuliskan “mimpi-mimpi” , yaitu hal-hal yang tidak bisa dilakukan
2. Atribut Suatu SRS
Terbagi menjadi 2 yaitu:
1. Benar (correct)
Artinya merupakan spesifikasi yang ditulis adalah yang diinginkan
2. Tepat (precise)
Dapat berpengaruh pada hasil perancangan serta pembuatan software requirements design (SRD)

3. Yang Terlibat dalam Pembuatan suatu SRS
Tentunya terdapat sembilan macam orang- orang yang mempunyai peran penting dalam pembuatan SRS ini, yaitu:
  • Pengguna (user) = yang menggunakan atau mengoprasikan produk yang sudah final dari suatu perangkat lunak yang dibuat.
  • Client = yaitu merupakan perusahaan ataupun orang yang mau membuat sistem (yang menentukan sistem)
  • Sistem analyst (engineer sistem) = yang tentunya biasa melakukan kontak teknik pertama dengan suatu client. Serta bertugas untuk menganalisis persoalan, menerima requirement serta menulis requirement.
  • Softwate Engineer = Tentunya seseorang yang bekerja setelah perangkat lunak itu dibuat (bekerja sama dengan suatu sistem engineer berdasarkan suatu SRS)
  • programmer = Merupakan seseorang yang menerima spesifikasi perancangan perangkat lunak, serta membuat kode dalam bentuk modul, serta menguji dan memeriksa modulnya.
  • Test Integration Group = Merupakan kumpulan orang yang bertugas untuk melakukan tes dan mengintegrasi modul
  • Maintenance Group = Seseorang yang bertugas untuk memantau serta merawat performansi dari sistem perangkat lunak yang dibuat selama pelaksanaan serta pada saat modifikasi muncul (80% dari pekerjaan)
  • Technical Support = Merupakan orang- orang yang mengelola (manage) suatu pengembangan perangkat lunak, termasuk konsultan ataupun orang yang tentunya mempunya kepandaian lebih tinggi.
  • Staff dan Clerical Work = Seseoeang yang bertugas untuk memasuka data dan membuat suatu document.
Mungkin sekian dapat admin sampai mengenai materi tentang konsep dasat dalam pekayasa perangkat lunak, 
Terimakasi telah berkunjung dan membaca artikel ini mengenai Konsep Dasar Rekayasa Perangkat Lunak. 

Semoga bermaanfaat - salam success :)

By: Muhammad Rizal Supriadi