Software atau perangkat lunak adalah kumpulan program yang terdapat pada komputer yang mempunyai kemampuan untuk menghubungkan pengguna dengan perangkat keras, baik itu komputer, printer, speaker, dan lain – lain.
Beberapa ahli yang berpendapat bahwa perangkat lunak adalah kumpulan dari berbagai data yang berbentuk elektronik atau program yang berisi instruksi – instruksi yang dapat dikelola oleh sistem komputer.
Perangkat lunak memiliki beberapa fungsi diantaranya: Mengatur kinerja perangkat keras yang terdapat di dalam komputer agar dapat berjalan secara simultan, Menerjemahkan bahasa manusia kedalam bahasa mesin agar dapat diproses oleh sistem komputer, Penghubung antar brainware, software dan hardware, dan membantu menyelesaikan masalah pengguna.
Daftar Isi
Karakteristik Perangkat Lunak Berdasarkan Fungsinya
Sudut pandang setiap orang berbeda mengenai software. Hal ini berhubungan langsung dengan keterlibatan setiap orang dengan perangkat lunak.
Contohnya sudut pandang seorang pengembang software akan melihat dalam ruang lingkup analisis kebutuhan, desain, pengkodean, testing, implementasi dan perawatan. Sehingga pengembang akan melihat karakteristik perangkat lunak berdasarkan kebutuhan pengguna.
Berikut beberapa karakteristik software berdasarkan fungsi:
- Functionality adalah karakteristik software ini berhubungan dengan tingkat performa dari suatu perangkat lunak dengan tujuan tertentu, tujuan ini berkaitan langsung dengan software yang digunakan brainware.
- Reliability adalah karakteristik yang memiliki hubungan langsung dengan kemampuan yang dimiliki oleh perangkat lunak. Kemampuan yang dimaksud disini adalah fungsionalitas perangkat lunak dalam menyelesaikan masalah atau kondisi tertentu sesuai keinginan pengguna.
- Usability, yaitu karakteristik perangkat lunak yang menunjukkan seberapa mudah dan efektif perangkat lunak tersebut digunakan oleh user. Hal ini biasanya berkaitan langsung dengan UI/UX dari sebuah software.
- Efficiency, yaitu kemampuan software dalam menggunakan sumber daya yang ada seefektif dan seefisien mungkin saat digunakan.
- Maintainability adalah kefleksibelan perangkat lunak dalam hal perawatan. Misalkan perangkat lunak dapat dengan mudah dimodifikasi untuk memperbaiki kinjerja, bug, penambahan fitur baru, dan sebagainya.
- Portability, karakteristik ini mengacu kepada kemudahan dalam pengembangan perangkat lunak (software developer). Hal ini berkaitan dengan kemampuan software developer dalam mentransfer perangkat lunak dari satu perangkat ke perangkat lain, sehingga tidak terjadi perubahan yang mempengaruhi fungsi software. Intinya karakteristik ini adalah kemampuan perangkat lunak dapat berfungsi dengan baik tanpa adanya perubahan di berbagai perangkat.
- Integrity adalah kemampuan perangkat lunak dalam hal mengatur atau membagikan hak akses ketiap user dan dapat mencegah hak akses ilegal oleh pihak ketiga.
- Robustness, karakteristik ini berkaitan dengan data atau informasi yang tidak valid, sehingga sejauh mana perangkat lunak tersebut dapat mengatasinya.
Karakteristik Perangkat Lunak Berdasarkan Perbedaan dengan Perangkat Keras (Hardware)
Karakteristik sebuah software juga dapat dilihat dari sisi perbedaan software tersebut dengan hardware, berikut beberapa karakteristiknya:
- Keunikan perangkat lunak adalah tidak diproduksi secara masal, namun masih dapat di devolepor (pengembangan). Hal ini menjadi pembedanya dengan hardware (perangkat keras). Artinya perangkat lunak hanya diproduksi satu saja, bukan dalam jumlah banyak seperti produksi RAM, Hardisk, SSD, dan sebagainya.
- Tidak adalah istilah “Usang” pada software. Berbeda halnya dengan perangkat keras yang dapat lebih mudah usang, jika digunakan dalam jangka waktu yang panjang. Contohnya, pada tahun 2013 kita membeli smartphone yang memiliki RAM 2 GB dan memori internal 16 GB. Pada tahun 2022 rata – rata smartphone menggunakan RAM 4 GB dan memori internal 64 GB, Hal ini lah yang dimaksud dengan kaa usang.
- Secara garis besar perangkat lunak yang dibuat berdasarkan pesanan atau custom dari pengguna, hal ini berbeda dengan perangkat keras yang dikembangkan dengan “Component-Based Assembly”.
Karakteristik Perangkat Lunak berdasarkan Sifatnya
Berikut beberapa karakteristik software jika berdasarkan sifatnya:
- Software engineering adalah metode yang digunakan dalam proses perancangan dan pengembangkan sebuah perangkat lunak baru. Hal ini berarti sebuah perangkat lunak tidak dibuat dan dikembangkan secara masal dalam pabrik ataupun manufaktur.
- Saat software dioperasikan dan ditemukan kecacatan, kekurangan dan bug, maka software tersebut dapat diperbaiki dan diupdate secara kontinyu sehingga tidak mudah usang (wear out).
- Kustomisasi, jika pengguna (brainware) menginginkan sebuah software sesuai dengan keinginannya baik dalam hal fitur, tampilan, proses bisnis, dan sebagainya. Hal ini dapat diwujudkan oleh perangkat lunak.
- Software dapat terus diperbarui sesuai dengan kebutuhan pengguna, berbeda halnya dengan barang yang diproduksi pabrik yang bersifat final dan permanen.
- Perangkat lunak bersifat invisible (tidak terlihat) secara kasat mata.
- Perangkat lunak bersifat fleksibel, sehingga dapat dimodifikasi, dikembangkan, diperbarui sesuai kebutuhan.
- Dapat dintegrasikan dengan sistem komputer termasuk perangkat keras komputer
Karakteristik Perangkat Lunak Berdasarkan Buku Ian Sommerville
Berikut beberapa karakteristik software berdasarkan buka yang dikarang oleh Ian Sommerville:
- Usability, semua fitur dan fungsi pada perangkat lunak harus dioperasikan dengan baik sesuai dengan perencanaan pada proses pengembangan perangkat lunak.
- Efisiensi, perangkat lunak harus menggunakan ruang penyimpanan secara efisien dan efektif.
- Maintainability, perawatan perangkat lunak dapat dilakukan dengan mudah. Artinya perangkat lunak harus mampu mengakomodir setiap perubahaan.
- Dependability, data atau informasi yang ada di perangkat lunak harus dapat dipercaya oleh setiap user.
Klasifikasi Perangkat Lunak
Berikut beberapa klasifikasi software secara umum:
- System Software
- Real-time Software
- Perangkat lunak Bisnis
- Engineering and Scientific Software
- Artificial Intelligence (AI) Software
- Web-based Software
- Personal Computer Software
- Sistem Operasi (Operating System)
Sekian pembahasan karakteristik perangkat lunak yang dibedakan menjadi empat kategori utama. Semoga dengan pembahasan ini dapat dengan mudah di pahami oleh para pembaca dan bermanfaat,