Perangkat lunak (Software) komputer adalah sekumpulan data elektronik yg disimpan dan diatur oleh komputer, data elektronik yg disimpan oleh komputer itu dapat berupa program atau instruksi yg akan menjalankan suatu perintah. Perangkat lunak disebut juga sebagai penerjemah perintah- perintah yg dijalankan pengguna komputer untuk diteruskan atau diproses oleh perangkat keras. Melalui Software atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah.
2. Ciri-ciri perangkat lunak
Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk yang klasik (pabrikasi). Biaya untuk perangkat lunak dikonsentrasikan kepada pengembangan. Hal ini berarti proyek perangkat lunak tidak dapat diatur seperti pengaturan proyek-proyek pemanufakturan. Perangkat lunak tidak pernah usang. Perangkat lunak tidak rentan terhadap pengaruh lingkungan yang merusak yang menyebabkan perangkat keras menjadi usang. Selama hidupnya, perangkat lunak mengalami perubahan (pemeliharaan). Aspek lain dari keusangan menggambarkan perbedaan antara perangkat keras dan perangkat lunak. Bila komponen suatu perangkat keras telah usang, komponen dapat diganti dengan suku cadangnya. Namun tidak ada suku cadang bagi perangkat lunak. Setiap kegagalan perangkat lunak menggambarkan kesalahan dalam perancangan atau proses di mana rancangan diterjemahkan ke dalam kode mesin yang dapat dieksekusi. Sebagian besar perangkat lunak dibuat secara custom-built, serta tidak dapat dirakit dari komponen yang sudah ada. Perhatikan bagaimana perangkat keras untuk produksi berbasis mikroprosesor dirancang dan dibuat. Setelah masing-masing komponen diseleksi, perangkat keras dapat dipesan secara terpisah. Sementara pada perangkat lunak, tidak katalog komponen perangkat lunak. Memang memungkinkan untuk memesan perangkat lunak secara terpisah, tetapi tetap merupakan satu kesatuan yang lengkap, bukan sebagai komponen yang dapat dipasangkan ke dalam program-program yang baru.
3. Jenis-jenis perangkat lunak
Perangkat lunak aplikasi (software application) Perangkat lunak aplikasi (software application) merupakan suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melaksanakan sebuah tugas yang di instruksikan pengguna. Contoh umum perangkat lunak aplikasi ialah pengolah kata seperti Microsoft Office dan OpenOffice.org serta pemutar media seperti Windows Media Player, Winamp dan GOM Player. Perkakas pengembangan perangkat lunak (software development tool) Pengertian Software development tool adalah salah satu jenis perangkat lunak (software) yang digunakan untuk membuat, mendebug, maintain (merawat / memelihara) dan mengembangkan perangkat lunak lainnya. seperti Kompiler untuk bahasa pemrograman tingkat tinggi seperti Pascal dan bahasa pemrograman tingkat rendah yaitu bahasa rakitan.
Sistem operasi (operating system)
Sistem Operasi (Operating System) adalah perangkat lunak komputer (software) yang bertugas untuk melakukan kontrol dan manajemen perangkat keras dan juga operasi-operasi dasar sistem, termasuk menjalankan perangkat lunak lain seperti program-program pengolah kata yang bisa digunakan untuk mempermudah kegiatan manusia. Sistem operasi adalah jenis yang paling penting dari perangkat lunak sistem dalam sistem komputer. Tanpa sistem operasi, pengguna tidak bisa menjalankan / menggunkan perangkat lunak lain pada komputer mereka (kecuali program booting). Contoh sistem operasi modern adalah Windows, Linux, iOS, Android dan Mac OS X.
Pengendali perangkat keras (device driver)
Device driver dapat dikatakan sebagai penghubung antara perangkat perangkat keras dan komputer, misalnya menghubugkan penggunakan barcode scanner pada aplikasi database nya, contoh aplikasi yang dipake di swalayan.
Perangkat lunak menetap (firmware)
Perangkat lunak menetap (firmware) adalah istilah yang mengacu kepada perangkat lunak yang disimpan di dalam Memori Hanya Baca. Tidak seperti Memori Akses Acak, Memori Hanya Baca tidak akan dapat berubah meski tidak dialiri listrik. ROM BIOS merupakan contoh perangkat lunak menetap yang berada pada motherboard sebuah komputer. contoh firmware juga seperti yang dipasang dalam jam tangan digital
Perangkat lunak bebas (free 'libre' software / free software)
Perangkat lunak bebas (free software) mengacu pada software yang bebas untuk dipakai, dipelajari dan dimodifikasi serta bisa disalin dengan / tanpa modifikasi, atau dengan beberapa ketentuan untuk memastikan bahwa kebebasan serupa juga bisa dinikmati oleh pengguna selanjutnya. Bebas di sini juga berarti dalam memakai, menyalin mempelajari, mengubah, atau menjual sebuah perangkat lunak, kita tidak perlu mendapatkan izin dari siapa pun.
Perangkat lunak sumber terbuka (open source software)
Perangkat lunak sumber terbuka adalah jenis perangkat lunak yang kode sumber-nya terbuka untuk dipelajari, dimodifikasi, ditingkatkan dan disebarluaskan. Karena sifat ini, biasanya dikembangkan oleh sebuah komunitas yang bertujuan mengembangkan perangkat lunak bersangkutan. Produk perangkat lunak yang dihasilkan ini biasanya bersifat bebas dengan tetap menganut kaidah dan etika tertentu. Semua perangkat lunak bebas (free software) ialah perangkat lunak sumber terbuka, akan tetapi perangkat lunak sumber terbuka belum tentu perangkat lunak bebas, tergantung kaidah yang dipakai dalam melisensikan perangkat lunak sumber terbuka tersebut.
Perangkat lunak uji coba (shareware / trialware)
Perangkat lunak uji coba mengacu kepada perangkat lunak berpemilik yang disediakan untuk pengguna tanpa membayar secara uji coba dan sering di batasi oleh koombinasi dari fungsi, ketersedian, atau kenyamanan. Perangkat lunak uji coba sering ditawarkan untuk memeberikan calon pembeli kesempatan untuk mencoba menggunakan program sebelum membeli lisensi untuk versi lengkap dari perangkat lunak tersebut.
Perangkat lunak gratis (freeware)
Freeware merupakan perangkat lunak komputer berhak cipta yang gratis digunakan untuk selamanya, berbeda dari shareware (perangkat lunak uji coba) yang mewajibkan penggunanya membayar (misalnya setelah jangka waktu 1 bulan atau untuk memperoleh fitur tambahan). Para pengembang perangkat lunak gratis biasanya membuat perangkat gratis untuk diberikan kepada komunitas / kelompok yang membutuhkan, namun juga tetap ingin mempertahankan hak mereka sebagai pengembang dan memiliki kontrol dalam pengembangan selanjutnya. Kadang jika pengembang memutuskan untuk berhenti mengembangkan sebuah produk perangkat freeware, mereka akan membagikan kode sumbernya kepada pengembang lain atau mengedarkan kode sumber tersebut untuk khalayak umum sebagai perangkat lunak bebas agar bisa dikembangkan oleh pengembang selanjutnya. Perangkat lunak perusak (malware) Perangkat lunak perusak / perangkat berbahaya (malware) adalah perangkat lunak yang dibuat untuk merusak atau menyusup ke sistem komputer atau jejaring komputer tanpa izin dari pemilik sah. Istilah ini merupakan istilah umum yang biasa dipakai untuk mengartikan berbagai jenis perangkat lunak atau kode perangkat lunak yang mengusik atau mengganggu.
4. Apa yang disebut sebagai 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. IEEE Computer Society mendefinisikan rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan, penggunaan dan pemeliharaan perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu penerapan pendekatan engineering atas perangkat lunak. Rekayasa perangkat lunak adalah pengubahan perangkat lunak itu sendiri guna mengembangkan, memelihara, dan membangun kembali dengan menggunakan prinsip reakayasa untuk menghasilkan perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk pengguna.