Minggu, 19 September 2021

REKAYASA PERANGKAT LUNAK

 PERANGKAT LUNAK

Perangkat lunak atau software adalah sekumpulan data elektronik yang tersimpan dan dikendalikan oleh perangkat komputer. Data elektronik tersebut meliputi instruksi atau program yang nantinya akan menjalankan perintah khusus. Perangkat lunak juga disebut sebagai bagian sistem dalam komputer yang tidak memiliki wujud fisik yang diinstal dalam sebuah komputer atau laptop agar bisa dioperasikan.

KARAKTERISTIK  PERANGKAT LUNAK

Berikut ini adalah beberapa karakteristik rekayasa perangkat lunak yaitu:

  1. Sebuah Perangkat Lunak itu dikembangkan dan tidak diproduksi masal seperti pada umumnya perangkat keras. Disini sebuah perangkat lunak hanya dibuat satu dan tidak dibuat dalam jumlah yang banyak sedangkan perangkat keras dibuat dalam jumlah besar.
  2. Sebuah Perangkat Lunak tidak pernah Usang. Hal ini sangat berbeda dengan perangkat keras, dimana sebuah perangkat keras akan usang dimakan waktu. Perhatikan saat kita membeli sebuah Gadget dengan Spek Processor Snapdragon 835, Ram 8 GB, Rom 64 GB, Kamera 16 MB, maka perangkat Gadget ini semakin lama akan usang dan dengan ditandai biasanya adalah PERFORMANSI dari Perangkat Keras yang menurun, Harga yang semakin murah, dan lain-lainnya (Soumyakanti, 2017).
  3. Beberapa Perangkat Lunak dikembangkan secara custom (pesanan) sedangkan Perangkat Keras dikembangkan berdasarkan sistem Component-Based Assembly. Disini sebuah perangkat lunak selain dikembangkan dengan cara umumnya, beberapa perangkat lunak juga ada yang dikembangkan dengan cara pesanan.

KATEGORI PERANGKAT LUNAK

1. Perangkat Lunak Sistem Operasi

Perangkat lunak sistem operasi berfungsi untuk mengendalikan seluruh sistem kerja mendasar yang ada di komputer. Jenis perangkat ini merupakan platform yang memungkinkan perangkat lunak dan aplikasi lain untuk dapat berfungsi. Sistem operasi mengatur segala proses, termasuk mengelola memori, menerjemahkan input, output, tabel pengkodean, dll. Pada intinya, Perangkat ini menghubungkan pengguna, perangkat keras, dan perangkat lunak aplikasi agar dapat digunakan sebagai secara bersamaan. Contoh dari perangkat lunak sistem operasi adalah Microsoft Windows, linux, Mac, IOS Apple, Google Android, dan OS Windows Phone.

2. Perangkat Lunak Aplikasi

Sesuai namanya, macam perangkat lunak ini adalah deretan aplikasi atau program yang tersedia di komputermu yang biasa digunakan untuk membantu menyelesaikan tugas tertentu. Aplikasi menjadi jenis software yang paling sering digunakan oleh banyak orang sekaligus dikenal sebagai perangkat non esensial yang berarti harus diinstal terlebih dahulu dan dioperasikan sesuai kebutuhan penggunanya. Contohnya seperti Adobe Photoshop, Skype, Adobe Premiere, Ms. Excel, dan masih banyak lagi.

3. Perangkat Lunak Pemrograman 

Perangkat lunak Pemrograman adalah software yang berguna untuk menerjemahkan instruksi-instruksi dari bahasa program ke kode bahasa mesin melalui prosedur tertentu agar dapat diterima dan dibaca oleh komputer. Perangkat lunak ini umumnya digunakan oleh seorang programmer untuk menerjemahkan, menulis, menguji, mengembangkan, hingga men-debug software lain, seperti perangkat lunak sistem dan perangkat lunak aplikasi. Misalnya saja Python, PHP, Java, C ++, BASIC,  COBOL, FORTRAN, dan Pascal.

Terdapat 3 level bahasa pemrograman, yakni:

1.    Bahasa tingkat rendah (low level language)

Bahasa ini disebut juga sebagai bahasa mesin di mana pengkodeannya menggunakan angka 0 dan 1.

2.    Bahasa tingkat tinggi (high level language)

Pengkodean bahasa pemrograman ini menggunakan bahasa Inggris. Beberapa contohnya seperti yang telah disebutkan di atas yaitu BASIC,  COBOL, FORTRAN, dll.

3.    Bahasa generasi keempat (4 GL)

Bahasa ini berfokus terhadap objek atau yang dikenal dengan Object Oriented Programming (OOP). Contohnya adalah Delphi, Visual Basic, Visual C++.

4. Perangkat Lunak Tambahan/Program Bantu (Utility)

Software ini merupakan aplikasi yang berguna untuk membantu pengelolaan komputer, seperti mengkompres file, melindungi sistem, memformat disket, mengkopi data, mengatur harddisk, dan lain-lain. Contohnya seperti Winzip, Antivirus, Scandisk, Norton Utility, dan Defragment.

JENIS PERANGKAT LUNAK

1.    Perangkat Lunak Berbayar – Software yang mengharuskan penggunanya untuk membayar dengan harga tertentu untuk bisa menggunakan perangkat lunak tersebut. Meskipun sudah dibeli, namun lisensi untuk menyebarluaskan tidak diberikan kepada pengguna, karena tindakan tersebut termasuk ilegal. Contoh software berbayar adalah Adobe Photoshop, Microsoft Office, Microsoft Windows dan sebagainya.

2.    Freeware – Perangkat lunak ini gratis dan dapat digunakan tanpa batas waktu tertentu. Biasanya pengembang software membuat perangkat lunak ini untuk komunitas tertentu. Hak cipta tetap dipertahankan sehingga siapa saja dapat melakukan update software terbaru. Contoh software freeware adalah Google Chrome, Mozilla Firefox, dan sebagainya.

3.    Free Software – Pengguna harus membeli perangkat lunak ini terlebih dahulu, setelah itu pengguna bebas untuk melakukan penggandaan, modifikasi, hingga distribusi.

4.    Shareware – Perangkat lunak yang dibagikan secara gratis untuk keperluan tertentu. Biasanya sebagai uji coba dengan fitur terbatas, dan penggunaan dengan waktu yang terbatas (biasanya 15 atau 30 hari). Shareware dibagikan secara gratis untuk memberikan pengguna kesempatan untuk mencoba menggunakan program sebelum membeli lisensi versi lengkap dari perangkat lunak tersebut. 

5.    Malware – Perangkat lunak ini dianggap sebagai perusak, sehingga bisa berbahaya jika disalahgunakan. Tujuan perangkat lunak ini untuk menyusup, bahkan merusak sistem jaringan komputer. Contoh malware adalah spyware (perangkat lunak pengintai), adware (perangkat lunak untuk iklan yang tidak jujur), virus komputer, dan software lainnya yang dibuat dengan tujuan merugikan.

6.    Open Source Software – Perangkat lunak yang bersifat terbuka, sehingga kode sumbernya dapat dipelajari, dimodifikasi, ditingkatkan dan disebarluaskan. Perangkat ini biasanya diperoleh secara gratis dan digunakan oleh komunitas tertentu untuk dikembangkan dengan lisensi GPL (General Public License). Contoh perangkat lunak ini adalah Linux, yang fungsinya setara dengan Microsoft Windows.

7.    Firmware – Perangkat lunak penyimpanan yang hanya dapat dibaca, atau Memory Read OnlySoftware ini bersifat paten sehingga tidak bisa dilakukan modifikasi atau pengembangan meskipun terdapat masalah dalam fungsinya. Biasanya firmware telah menyatu dengan perangkat keras, sehingga dianggap bukan perangkat lunak seutuhnya.

PERANGKAT LUNAK WARISAN

Dalam komputasi, sistem warisan adalah metode lama, teknologi, sistem komputer, atau program aplikasi, “dari, berhubungan dengan, atau menjadi sebuah sistem komputer sebelumnya atau usang.” 

Sistem Perangkat Lunak warisan yg berumur lebih dari beberapa tahun menjadi mahal utk diubah karena beberapa alasan :

1.    Berbagai bagian sistem diimplementasi oleh tim yg berbeda. Tidak ada gaya pemrograman yg konsisten diseluruh sistem.

2.    Sebagian/seluruh sistem diimplementasikan dengan bahasa program bahasa program lama. Outsourcing yg mahal dari pemeliharaan sistem mungkin terjadi karena staf yg bersangkutan tidak paham dengan bahasa program tsb.

3.    Dokumentasi sistem sering tidak memadai.

4.    Pemeliharaan bertahun-tahun biasanya merusak struktur sistem sehingga semakin sulit dipahami.

5.    Sistem telah dioptimasi untuk pemakaian ruang & kecepatan eksekusi & tidak ditulis utk dipahami.

6.    Data yg diolah sistem mungkin disimpan di file yg berbeda & struktur filenya tidak kompatibel. Mungkin ada duplikasi data, data tidak akurat & tidak lengkap

KEGAGALAN PERANGKAT LUNAK

Saat ini, sebagian besar bisnis sangat bergantung pada software untuk operasi sehari-hari, baik secara internal maupun eksternal yang berhubungan dengan pelanggan. Akibatnya, menjadi semakin jelas bahwa kegagalan perangkat lunak sedang meningkat dan berdampak besar pada organisasi global. Tingkat kegagalan proyek perangkat lunak berkisar antara 50% – 80%.

Berikut merupakan berbagai penyebab kegagalan perangkat lunak yang paling umum:

  • Perhitungan yang salah 
  • Pengeditan data salah 
  • Pengeditan data tidak efektif 
  • Pengkodean / implementasi aturan bisnis yang salah 
  • Kinerja perangkat lunak yang tidak memadai 
  • Data yang membingungkan atau menyesatkan 
  • Perangkat lunak yang sulit digunakan 
  • Perangkat lunak usang 
  • Pemrosesan tidak konsisten
  • Sulit untuk memelihara dan memahami 
  • Hasil atau kinerja yang tidak dapat diandalkan
  • Dukungan kebutuhan atau tujuan bisnis yang tidak memadai
  • Tidak lagi didukung oleh vendor
  • Antarmuka yang salah atau tidak memadai dengan sistem lain 
  • Pencocokan dan penggabungan data yang salah 
  • Pencarian data yang menghasilkan hasil yang salah 
  • Pemrosesan hubungan data yang salah 
  • Penanganan file dan data salah 
  • Kontrol keamanan tidak memadai
  • Ketidakmampuan untuk menangani kapasitas data produksi

REKAYASA PERANGKAT LUNAK

Rekayasa perangkat lunak (RPL, atau dalam bahasa Inggris: Software Engineering atau SE) adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas.

PROSES PERANGKAT LUNAK

Proses perangkat lunak (Software process) adalah suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak yang bertujuan untuk mengembangkan sistem dan memberikan panduan yang bertujuan untuk menyukseskan proyek pengembangan sistem melalui tahap demi tahap.

PRAKTEK REKAYASA PERANGKAT LUNAK

Praktek rekayasa perangkat lunak mencakup prinsip-prinsip, konsep, metode dan alat-alat yang menerapkan seluruh proses perangkat lunak. Setiap proyek rekayasa perangkat lunak berbeda namun, satu set dari prinsip-prinsip umum berlaku untuk proses secara keseluruhan dan praktek dari setiap aktivitas kerangka terlepas dari proyek atau produk.

MITOS REKAYASA PERANGKAT LUNAK

1.    Mitos managements 

A.    Kita tidak perlu mengubah pendekatan terhadap pengembangan software, karena jenis pemrograman yang kita lakukan sekarang ini sudah kita lakukan 10 tahun yang lalu.

Realitasnya : Walau hasil program sama, produktivitas dan kualitas software harus ditingkatkan dengan menggunakan pendekatan software developments

B.    Kita sudah mempunyai buku yang berisi standarisasi dan prosedur untuk pembentukan software.

Realitasnya : Memang buku tersebut ada, tetapi apakah buku tersebut sudah dibaca atau buku tersebut sudah  ketinggalan jaman ( out of date ).

C.    Jika kita tertinggal dari jadwal yang ditetapkan, kita menambah beberapa programmer saja. Konsep ini sering disebut Mongolian harde concept.

2.    Mitos Langganan / Customer

A.    Pernyataan tujuan umum sudah cukup untuk memulai penulisan program. Penjelasan yang lebih rinci akan menyusul kemudian.

Realitasnya : Definisi awal yang buruk adalah penyebab utama kegagalan terhadap usaha-usaha pem- bentukkan software. Penjelasan yang formal dan terinci tentang informasi fungsi performance interface, hambatan desain dan kriteria validasi adalah penting. Karakteristik di atas dapat ditentukan hanya setelah adanya komunikasi antara customer dan developer.

B.    Kebutuhan proyek yang terus menerus berubah dapat dengan mudah diatasi karena software itu bersifat fleksibel. Kenyataannya memang benar bahwa kebutuhan software berubah, tetapi dampak dari peru- bahan berbeda dari waktu ke waktu. 

 



Kesimpulan : Jika perubahan mendekati akhir penyelesaian, maka biaya akan lebih besar.

3.    Mitos Praktisi

A.    Tidak ada metode untuk analisis disain dan testing terhadap suatu pekerjaan, cukup menuju ke depan terminal dan mulai coding.

Realitasnya : Metode untuk analisis desain dan testing diperlukan dalam pengembangan software.

B.    Segera setelah software digunakan, pemeliharaan dapat diminimalisasikan dan diatasi dengan cara “CATCH AS CATCH CAM”.

Realitasnya : Diperlukan budget yang besar dalam maintenance software. Pemeliharaan software harus diorganisir dan direncanakan.

1

Tidak ada komentar:

Posting Komentar

DICODING, KELAS GRATIS HINGGA CHALLENGE MENARIK!

Hai semuanya! sebelumnya, kita kenalan dulu yaa. Saya Mala,salah satu mahasiswi IT di salah satu universitas di Indonesia. Saya ingin berbag...