Rekayasa Perangkat Lunak dan Model Proses Perangkat Lunak

Pengertian Perangkat Lunak

Menurut Ian Sommerville : 
"Computer programs and associated documentation. Software products may be develoed for a particular customer or may be developed for a general market."
Program komputer dan dokumentasi yang terkait. Produk Software dapat dikembangkan untuk pelanggan tertentu atau mungkin dikembangkan untuk umum.

Menurut Pressman dalam bukunya Software Engineering A Practioner's Approach , perangkat lunak didefinisikan lebih rinci lagi yaitu sebagai :
  • Instruksi - instruksi yang jika dieksekusi akan memberikan layanan-layanan atau fungsi seperti yang diinginkan/
  • Struktur data yang memungkinkan program untuk memanipulasi informasi secara prorporsional.
  • Dokumen - dokumen yang menggambarkan operasi dan kegunaan program.

Menurut IEEE (Stadard Glossary of Software Engineering Terminology, 1990), Perangkat lunak adalah program komputer , prosedur, dan dokumentasi serta data yang terkait dengan pengoperasian sistem komputer.

Dalam dunia sistem informasi, Terdapat dua kelompok Perangkat Lunak yaitu Perangkat Lunak Sistem dan Perangkat Lunak Aplikasi. Adapun pembagiannya adalah sebagai berikut :

Perangakt Lunak Sistem dibagi menjadi tiga golongan yaitu :

  1. Sistem Operasi
  2. Bahasa Pemrograman
  3. Utilitas

Perangkat Lunak Aplikasi contohnya :

  1. Aplikasi Perkantoran
  2. Aplikasi Multimedia
  3. Palikasi Internet dan Jaringan
  4. Aplikasi Khusus


Sistem Operasi

Sistem operasi adalah penghubung antara lapisan hardware dengan lapisan software. Sistem operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. 

Sistem operasi menjamin aplikasi lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem berkas. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem operasi mengatur schedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.

Secara sederhana, sistem operasi merupakan suatu software komplek yg mempunyai banyak fungsi, yaitu :

  1. Fungsi pertama, untuk mengatur semua perangkat keras komputer yang terhubung dengan CPU.
  2. Fungsi kedua, untuk menerjemahkan segala aktivitas pemakai kepada CPU agar segala yang diperintahkan oleh pemakai dapat dikerjakan oleh CPU.
  3. Fungsi ketiga, untuk mengatur semua proses yg terjadi di dalam CPU.

Saat ini, sudah ada beberapa jenis Perangkat Lunak Sistem Operasi diantaranya.
  1. DOS (Disc Operating System), adaah sistem operasi generasi awal yang dirancang untuk komputer rtunggal personal computer (PC)
  2. Unix, adalah sistem operasi berbasis jaringan. Yang merupakan sistem operasi tertua dan pertama kali digunakan oleh IBM, HP dan Sun Solaris. Beberapa jenis sitem operasi Unix adalah: Unix, OpenBSD, FreeBSD.
  3. Windows, adalah sistem operasi buatan microsoft. Windows adalah sistem operasi yang sangat populer karena tampilannya yang user friendly dengan menggunakan pendekatan GUI.
  4. Macintosh Operating System adalah salah satu sistem operasi yang diciptakan oleh perusahaan Apple Inc. Mac OS di rancang khusus untuk komputer Macintosh dan tidak kompatibel dengan komputer berbasis IBM.


Bahasa Pemrograman

Perangkat Lunak Bahasa (Language Program), yaitu program yang digunakan untuk menerjemahkan instruksi-instruksi yang ditulis dalam bahasa pemrograman ke dalam bahasa mesin agar dapat diterima dan dipahami oleh komputer.

Berdasarkan wikipedia, menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
  1. Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
  2. Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya kode_mesin|MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
  3. Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
  4. Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb. Komputer dapat mengerti bahasa manusia itu diperlukan program compiler atau interpreter.


Perangkat Lunak Utilitas

Perangakt Lunak Utilitas adalah perangakt lunak yang ditujukan untuk menunjang fungsionalitas perangkat lunak sistem operasi. Perangkat Lunak Utilitas didsainuntuk membantu proses analisis, konfigurasi, optimasi, dan membantu pengelolaan sebuah komputer ataupun sistem.

Perangkat Lunak Utilitas lebih memfokuskan pada penggunaan dan optimasi fungsi dari infrastruktur yan gterdaapt dalam sebuah komputer. Kebanyakan perangkat keras utilitas ini dibuat secara khsus untuk melakukan fungsi tertentu pada suatu area komputasi secara spesifik, seperti memformat harddisk, atau melakukan pengecekan konektifitas jaringan. Namun dalam perkembangannya sejumlah perangkat lunak utilitas terkadang pula dipaketkan dalam satu paket utilitas yang ditujukan untuk beragam kebutuhan.

Beberapa contoh Program Utilitas
  1. Backup, adalah program utilitas yang fungsinya untuk melakukan backup
  2. Recovery Date, adalah program utilitas yang digunakan untuk mengembalikan data yang secara fisik telah rusak / berubah.
  3. Antivirus, adalah program utilitas yang difungsikan untuk mencegah serangan virus / malware.
  4. Maintenance, adalah program utilitas yang difungsikan untuk perawatan data, defragment harsdisk, pembersihan file sampa, dll.


Karakteristik Perangkat Lunak Berkualitas

Maintability, yaitu tingkat kemudahan perangkat lunak tersebut mengakomodasi perubahan-perubahan. Karena setiap waktunya pasti akan ada perubahan yang diperlukan untuk meningkatkan fitur dan fungsinya.

Dependability, adalah ketidakbergantungan perangkat lunak dengan elemen-elemen sistem lainnya atau secara keseluruhan. Diharapkan perangkat lunak ini dapat berdisi sendiri dan tetap menjalankan setiap fungsinya dengan baik.

Efficiency, adalah waktu eksekusi perangakat lunak. Perangkat Lunak yang baik memiliki eksekusi waktu yang singkat.

Usability, yaitu atribut yang menunjukkan tingkat kemudahan pengoperasian perangakt lunak. Dalam hal yang lebih lanjut ini bisa disebut user interface. Perangkat Lunak yang baik, dapat memberikan kemudahan bagi si pengguna untuk mengoperasikannya. 


Peranan Perangkat Lunak

Dalam perkembangan jaman, teknologi menjadi hal yang paling cepat berkembang. Dalam sebuah teknologi yang berbasiskan komputer, Perangakat Lunak memiliki perananya sendiri, yaitu
  1. Sebagai sebuah Produk, dimana perangkat lunak ini menjadi sebuah produk yang siap pakai. Baik untuk bidang perkantoran, hotel, industri, dll.
  2. Sebagai penghasil Produk, dengan pengembangan perangakt lunak, misalnya saja dengan bahasa pemrograman kita dapat menghasilkan sebuah produk yang berguna dan memiliki fungsi sesuai yang diinginkan.


Model Proses Rekayasa Perangkat Lunak

Proses Pengembangan Perangkat Lunak (Software Development Process) adalah suatu penerapan struktur pada pengembangan suatu Perangkat Lunak (Software), yang bertujuan untuk mengembangkan sistem dan memberikan panduan untuk menyukseskan proyek pengembangan sistem melalui tahapan-tahapan tertentu. 

Dalam proses pengembangan perangkat lunak tersebut, ada yang namanya model proses. Model Proses ini mencakup suatu tahapan kegiatan termasuk dalam bagian dari proses perangkat lunak tersebut dan produk perangkat lunak. Berikut ini beberapa macam model proses yang sering digunakan.

Model Proses Waterfall

Model Proses Waerfall adalah suatu model proses klasik yang sering digunakan dengan sebauh pendekatan kepada pengembangan perangkat lunak yan gsistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan. Model Proses Waterfall pengerjaan sistem dilakukan secara berurutan / secara linier.


Model Proses Spiral

Model spiral adalah model proses dari software yang evolsioner dan dapat merangkai dengan sifat yang iteraktif dari prototype dengan cara kontrol dan aspek sistematis dari model sekuensial linear. Model ini sangat berpotensi untuk pengembangan versi software secara cepat. Spiral model dibagi menjadi 6 aktivitas kerangka kerja sebagai berikut:
  1. Komunikasi dengan pemakai
  2. Perencanaan
  3. Analsis resiko
  4. Rekayasa
  5. Konstruksi dan pelepasan
  6. Evaluasi


Model Proses RAD (Rapid Application Deelopment)
RAD adalah sebuah model proses perkembangan perangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi berbasis komponen. 


Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-kira 60-90 hari)


Model Proses Prototype


Model Proses Prototype berfungsi sebagai sebuah mekanisme untuk mengidentifikasi kebutuhan perangkat lunak. Prototipe bisa menjadi paradigma yang efektif bagi rekayasa perangkat lunak. Kuncinya adalah mendefinisikan aturan-aturan main pada saat awal, yaitu pelanggan dan pengembang keduanya harus setuju bahwa prototype dibangun untuk berfungsi sebagai mekanisme pendefinisian kebutuhan.

Comentarios

Entradas populares de este blog

Car Insurance Quotes

Cara Install dan Download Virtual Box di Windows

5 manfaat ikan sidat