1. Cara Kerja Software
Karena perangkat lunak adalah bidang dengan banyak kategori, maka setiap perangkat lunak memiliki cara kerja yang berbeda. Di artikel ini, kita akan membahas cara kerja dua jenis perangkat lunak utama, yaitu software aplikasi dan software sistem.
• Cara Kerja Software Aplikasi
Untuk dapat menjalankan fungsi, semua aplikasi pasti memerlukan sistem operasi seperti Windows, Linux, Mac, atau OS lainnya. Aplikasi mungkin juga membutuhkan perangkat lunak lain untuk dapat bekerja. Di Linux, kita menyebutnya sebagai ketergantungan. Jika Anda pengguna Windows, Anda mungkin harus menginstal perangkat lunak tertentu sebelum dapat menjalankan sebuah aplikasi. Misalnya update Microsoft.
NET Framework dan Microsoft C++ Redistributable ke versi terbaru, install Adobe Flash Player atau DirectX , atau yang lainnya. Setelah Anda memenuhi semua kebutuhan aplikasi, barulah Anda bisa menjalankan aplikasi tersebut.Dahulu, aplikasi hanya bisa dijalankan melalui desktop (aplikasi berbasis desktop). Anda perlu menginstal aplikasi ke komputer dan menyediakan sumber daya (penyimpanan, memori, dll) sesuai kebutuhan aplikasi.Kini, tren aplikasi telah beralih ke web (aplikasi web-based).
Anda dapat menjalankan banyak aplikasi canggih lewat web browser tanpa terkendala OS dan sumber daya yang Anda minta hanyalah sebuah browser web seperti Google Chrome, Mozilla Firefox, Opera, Safari, atau lainnya.
• Cara Kerja Software Sistem
Sistem perangkat lunak bekerja di balik layar. Kapan pun Anda mengoperasikan komputer, saat itulah sistem bekerja tanpa Anda sadari. Sistem perangkat lunak menangani perangkat keras dan perangkat lunak sehingga Anda dapat menjalankan aplikasi di komputer. Perangkat lunak secara otomatis bekerja saat Anda menyalakan komputer (boot sistem) dan tetap berjalan selama Anda mengoperasikannya.
2. Cara Mempertahankan Kualitas Software
Perangkat lunak adalah sistem yang kompleks sehingga sangat mungkin mengalami penurunan dan kegagalan fungsi (error). Karena itu pengembang perlu mempertahankan kualitas perangkat lunak agar dapat bekerja seperti yang diharapkan.
Secara fungsional , perangkat lunak harus dapat menjalankan tugas sesuai petunjuk. Hal ini mencakup detail teknis, ketersediaan dan manipulasi data, kalkulasi, dan fungsi spesifik lain.Secara non-fungsional , perangkat lunak juga harus memenuhi berbagai kriteria non-teknis seperti portabilitas, pemulihan force majeure, keamanan, privasi, dan kegunaan.
Pengujian perangkat lunak adalah upaya untuk mengetahui kinerja perangkat lunak guna menemukan celah (bug) dan kesalahan. Pengujian perangkat lunak dijalankan secara terus-menerus, baik oleh tim pengembang maupun pengguna.Kualitas software terdiri dari beberapa dimensi dengan kriteria berikut:• Aksesibilitas – sejauh mana kelompok pengguna dapat menggunakan perangkat lunak dengan nyaman.
• Kompatibilitas – dapat digunakan di berbagai OS, perangkat, dan browser yang berbeda.
• Efisiensi – penggunaan energi, sumber daya, usaha, waktu, atau uang seminimal mungkin.
• Fungsionalitas – kemampuan perangkat lunak untuk menjalankan semua fungsi.
• Kemudahan instalasi – dapat diinstall di OS, perangkat, atau browser tertentu.
• Lokalisasi – bermacam-macam bahasa, zona waktu, mata uang, dan hal-hal lain yang berkaitan dengan lokasi.
• Pemeliharaan – seberapa mudah perangkat lunak dapat diubah untuk menambah dan meningkatkan fitur, memperbaiki bug, dan lain-lain.
• Performa – seberapa cepat perangkat lunak bekerja dengan beban kerja tertentu.• Portabilitas – bagaimana perangkat lunak dapat dipindahkan dari satu tempat ke tempat lainnya.
• Keandalan – menjalankan suatu fungsi dalam kondisi tertentu dan dalam jangka waktu tertentu tanpa error sama sekali.
• Skalabilitas – penyesuaian kinerja sesuai beban kerja.
• Keamanan – perlindungan dari akses tanpa izin, penyerangan privasi, pencurian, kehilangan data, perangkat lunak berbahaya, dan sebagainya.
• Kemudahan pengujian – seberapa mudah untuk menguji perangkat lunak.
• Kegunaan – seberapa mudah untuk menggunakan perangkat lunak.
3. Jenis Pemeliharaan Perangkat Lunak
Melalui pengujian internal, pengujian beta, dan laporan dari pengguna, pengembang dapat menemukan bug dan kesalahan untuk segera memperbaikinya.
Ada 4 jenis perbaikan yang bisa dilakukan developer, yaitu:• Korektif – memperbaiki kesalahan yang dilaporkan pengguna selama penggunaan.
• Adaptif – perubahan rutin untuk merespons perubahan perangkat lunak dan perangkat keras untuk menjaga menjaga, misalnya saat rilis versi OS atau browser baru.
• Penyempurnaan – meningkatkan fungsionalitas dengan mengubah tampilan dan kode program.
• Pencegahan – restrukturisasi dan optimasi kode untuk mencegah terjadinya kesalahan pada perangkat lunak.