REKAYASA PERANGKAT LUNAK
Rekayasa Perangkat Lunak adalah suatu disiplin
rekayasa yang berkonsentrasi terhadap seluruh aspek.
Rekayasa perangkat lunak berasal dari 2 kata
yaitu Software( Perangkat Lunak) dan Engineering (Rekayasa).
Perangkat Lunak (Software) adalah source code pada
suatu program atau sistem. Perangkat lunak tidak hanya dokumentasi terhadap
source code tapi juga dokumentasi terhadap sesuatu yang dibutuhkan selama
pengembangan, instalasi, penggunaan dan pemeliharaan sebuah sistem.
Engineering atau Rekayasa adalah aplikasi terhadap
pendekatan sistematis yang berdasar atas ilmu pengetahuan dan matematis serta
aplikasi tentang produksi terhadap struktur,mesin, produk, proses atau sistem.
Mutu
Perangkat Lunak
Terdapat 3 pihak (minimal) yang mempengaruhi mutu
perangkat lunak yaitu
- Sponsor
Seseorang atau organisasi yang membiayai/membayar
selama pengembangan atau perantaraan sistem software dan biasanya mempunyai
respon terhadap pengembangan sistem software itu sendiri dengan melibatkan
perhitungan biaya yang optimal.
- User
Setiap orang yang secara langsung berinteraksi
terhadap eksekusi software, yang secara langsung memberi input ke komputer dan
menggunakan/menikmati output dari komputer.
- Developer
Seseorang atau organisasi yang memberikan
modifikasi dan memelihara terhadap error serta mengembangkan sistem software
tersebut.
Gambar 1.1. Gambar Sisi
Pandang dari komponen kategori terhadap Mutu Perangkat Lunak
SOFTWERE
Softwere
adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data
elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi
yang akan menjalankan suatu perintah
Jenis perangkat
lunak dibedakan menjadi 2 yaitu :
1. Perangkat
Lunak Generik (Generic Software)
Merupakan perangkat
lunak yang berdiri sendiri (stand alone) dengan menggunakan standar tertentu
yang diproduksi oleh organisasi pengembang perangkat lunak (vendor) dan biasa dijual secara bebas dan siapapun dapat
membeli. Contoh perangkat lunak generik antara Office Aplication (aplikasi
perkantoran), Database Engine (mesin data), Graphic Package (paket pengolah
grafik) , Programming Application (Paket Pemrograman)dan lain sebagainya.
2. Perangkat
Lunak Pesanan (Order Software)
Merupakan perangkat lunak yang
dipesan oleh pelanggan tertentu kepada pengembang perangkat lunak (vendor) untuk memenuhi kebutuhan fungsi tertentu yang
dikehendaki pemesan. Penagkat lunak yang dipesan secara khusus ini biasanya
ditujukan untuk mendukung proses bisnis, mengatur perangkat ektromekanik pada manufacture,
system control suatu aktifitas khusus (misal pelabuhan udara, pengaturan
lalullintas jalan raya),
Sedangkan
bila dikelomppokkan berdasar penggunaannya dikelompokkan dalam 8 katagori,
yaitu
1. System
Software
Perangkat lunak yang
bertanggungjawab untuk mengendalikan, mengintegrasikan, dan mengelola komponen
perangkat keras atau perangkat lunak
lainnya tanpa melihat jenjang dari perangkat lunak tersebut.Perangkat
lunak ini pada umumnya memiliki fungsi
dasar sistem operasi seperti menyalin
(copy), memindahkan (transfer), menyimpan (save), menghapus (delete),
mem-format, pengelolaan berkas (file manager), tek editor, pengendalian
otentifikasi, pengendalian jaringan, pencetakkan (print), dan penggunaan
sumberdaya yang terdapat pada perangkat keras lainnya.
2. Real-time
software
Perangkat lunak yang
dgunakan un memonitor, meng-analisa, dan mengendalikan tiap peristiwa yang terjadi secara
langsung.Perangkat lunak ini menggumpulkan data tiap kejadian kemudian
menganalisa dan menanggapi hasil analisa dengan mengirimnya pada perangkat yang
lain, contoh perangkat lunak pendeteksi gempa, pendeteksi tsunami , pendeteksi
gunung berapi dan yang lainnya.
3. Business
Software
Perangkat keras yang
dipergunakan untuk mengelola kerumitan proses bisnis dalam organisasi,
perangkat ini biasanya ter-integrasi satu dengan yang lainnya membentuk sebuah
jejaring system dalam organisasi yang kemudian di dalam organisasi disebut
Management Information System . Misal penggunaan sistem penjualan, pergudangan,
penggajian, kepegawaian dan lain sebaginya.
4. Engineering
and Scientific software.
Perangkat keras yang
disusun secara khusus mengikut sertakan berbagai rumus-rumas pada ilmu
pengetahuan tertentu, perangkat lunak
ini bisanya dilakukan untuk proses simulasi suatu kejadian.
5. Embedded
software
Perangkat lunak yang
dirancang khusus untuk piranti modern cerdas, dimana fungsi dari perangkat
lunak ini sebagai pengendali terhadap peralatan tersebut , misal keypad pada
perangkat rumah tangga, panel control mobil,
perangkat, instrument pemutus arus’ pada pembangkit listrik dan
lain-lain
6. Personal
Software
Peran gkat lunak yang
dibuat untuk membantu menyelesaikan/memenuhi pekerjaan manusia secara
individual sebagai contoh memainkan music dan video, pekerjaan perkantoran,
mengkoleksi database, berkomunikasi dengan komunitas tertentu dan berbagai
keperluan lainnya.
7. Web
base software
Perangkat lunak yang
dipergunakan untuk menjalankan bernagai perintah pada jejaring internet ,
berbagai format data dapat dikelola dengan menggunakan format HTML, PHP, ASP,
ASPX.
8. Artificial
intelligence software
Perangkat lunak ini dibuat untuk
menyelesaikan pekerjaan rumit dan non numerical algorithm, menggunakan metoda
neumal network.
Mitos
Perangkat Lunak
·
Mitos Manajemen Manajer yang bertanggung jawab terhadap masalah
perangkat lunak, seperti juga manajer pada kebanyakan disiplin, sering
mengalami tekanan karena masalah pengaturan keuangan, menjaga jadwal agar tidak
kacau,dan peningkatan kualitas.
·
Mitos Pelanggan Pelanggan mempercayai mitos tentang perangkat lunak
karena manajer dan para pelaksana yang bertanggung jawab atas masalah perangkat
lunak hanya bekerja sedikit saja untuk memperbaiki kesalahan informasi. Mitos
ini membawa kea rah pengharapan yang salah oleh pelanggan dan ketidak puasan
pengembang.
·
Mitos para Praktisi Pemrograman dilihat sebagai sebuah karya seni
Krisis
Perangkat Lunak
·
Masalah nyata yang sudah mengganggu perkembangan perangkat lunak
·
Serangkaian masalah yang terjadi dalam perkembangan perangkat lunak
komputer.
·
Masalah yang ada tidak hanya terbatas pada perangkat lunak yang tidak
berfungsi dengan baik tapi juga pada penderitaan yang melingkupi
masalah-masalah yang berhubungan dengan bagaimana mengembangkan perangkat lunak, bagaimana memelihara volume
perangkat lunak yang sedang tumbuh dan bagaimana mengejar kebutuhan perangkat
lunak lebih banyak lagi
·
Penyebab krisis atau penderitaan Perangkat lunak dapat ditelusuri
dengan sebuah mitologi yang muncul selama masa sejarah awal perkembangan
perangkat lunak.
·
Mitos perangkat lunak ini berbicara atas salah informasi dan keraguan.
Masa sekarang kebanyakan kaum profesional memiliki banyak pengetahuan
mengetahui berbagai mitos di bidang ilmu yang digelutinya (sikap yang salah
yang menyebabkan masalah yang serius bagi manajer serta masyarakat teknis). Hal
ini terlihat berbagai sisi pandang dari pihak Manajer/Sponsor, pelanggan atau
Pengembang/Praktisi
Latihan Soal
1. Sebutkan
jenis perangkat lunak
2. Bagaimana
cara kamu mengatasi Mitos Perangkat Lunak untuk menghasilkan perangkat lunak
yang bermutu
3. Tulislah
sebuah rangkuman karya tulis yang merangkum kemajuan terkini pada salah satu
aplikasi perangkat lunak yang “memimpin”. Pilihan-pilihan potensial meliputi
kecerdasan buatan, realitas virtual, jaringan syaraf tiruan.
Jawab
:
1. Perangkat
Lunak Generik (Generic Software)
Perangkat Lunak
Pesanan (Order Software)
2. Bersikap
selayaknya karena sikap yang salah yang menyebabkan masalah yang serius bagi
manajer serta masyarakat teknisi, penyebabnya adalah sikap lama memang sangat
sulit diubah, dan sisa-sisa mitos perangkat lunak masih tetap dipercaya.
3. Jaringan
syaraf tiruan
Jaringan syaraf tiruan adalah algoritma
penyelesaian masalah komputasi yang prinsip kerjanya menirukan jaringan syaraf
manusia. Meniru analogi jaringan syaraf manusia, jaringan syaraf tiruan terdiri
dari interkoneksi beberapa lapisan neuron mulai dari neuron input sampai neuron
output. Neuron input berfungsi untuk menerima masukan yang selanjutnya akan
diproses dalam layer berikutnya. Masukan sering kali harus dibuat
ternormalisasi dengan tujuan supaya error pada pemrosesan tidak menuju tidak
berhingga. Pada proses pengolahan masukan di JST akan terjadi proses perkalian,
penjumlahan dan penerapan fungsi aktifasi terhadap masukan sebuah node
Algoritma Jaringan Syaraf Backpropagation
Backpropagation merupakan algoritma
pembelajaran yang terwarisi dan biasanya digunakan olehperceptron dengan
banyak lapisan untuk mengubah bobot-bobot yang terhubung dengan neuron-neuron
yang ada pada lapisan tersembunyinya. Algoritma backpropagation menggunakan erroroutput untuk
mengubah nilai-nilai bobotnya dalam arah mundur (backward). Tahap
perambatan maju (forward propagation) harus dikerjakan terlebih dahulu
untuk mendapatkan nilai error tersebut. Saat perambatan maju neuron-neuron
diaktifkan dengan menggunakan fungsi aktivasi sigmoid biner
Model Jaringan Syaraf Backpropagation
Pelatihan pada jaringan syaraf backpropagation, feedfoward (umpan maju) dilakukan dalam rangka
perhitungan bobot sehingga pada akhir pelatihan akan diperoleh bobot-bobot yang
baik. Selama proses pelatihan, bobot-bobot diatur secara iteratif untuk
meminimumkan error(kesalahan)
yang terjadi. Error (kesalahan) dihitung berdasarkan
rata-rata kuadrat kesalahan (MSE). Rata-rata kuadrat kesalahan juga dijadikan
dasar perhitungan unjuk kerja fungsi aktivasi. Sebagian besar pelatihan untuk
jaringan feedfoward (umpan maju) menggunakan gradien dari
fungsi aktivasi untuk menentukan bagaimana mengatur bobot-bobot dalam rangka
meminimumkan kinerja. Gradien ini ditentukan dengan menggunakan suatu teknik
yang disebutbackpropagation.
Algoritma pelatihan standar backpropagation akan menggerakkan bobot dengan
arah gradien negatif. Prinsip dasar dari algoritma backpropagation adalah memperbaiki bobot-bobot jaringan dengan arah yang
membuat fungsi aktivasi menjadi turun dengan cepat.
Pelatihan backpropagation meliputi 3 tahapan sebagai berikut.
1. Propagasi maju.
Pola masukan dihitung maju mulai dari input layer hingga output layer menggunakan fungsi aktivasi yang
ditentukan.
2. Propagasi mundur.
Selisih antara keluaran jaringan dengan target yang
diinginkan merupakan kesalahan yang terjadi. Kesalahan yang terjadi itu
dipropagasi mundur. Dimulai dari garis yang berhubungan langsung dengan
unit-unit di output layer.
3. Perubahan bobot.
Modifikasi bobot untuk
menurunkan kesalahan yang terjadi. Ketiga fase tersebut diulang-ulang terus
hingga kondisi penghentian dipenuhi. (Puspaningrum, 2006)
Referensi :
http://dhidik.wordpress.com/2010/03/10/jaringan-syaraf-tiruan/
http://jalanwaktu.wordpress.com/jaringan-syaraf-tiruan/