Monday, February 8, 2010

Perangkat Lunak (software)

Perangkat lunak, adalah program komputer yang berfungsi sebagai sarana interaksi antara pengguna dan perangkat keras. Perangkat lunak dapat juga dikatakan sebagai 'penterjemah' perintah-perintah yang dijalankan pengguna komputer untuk diteruskan ke atau diproses oleh perangkat keras. Perangkat lunak ini dibagi menjadi 3 tingkatan: tingkatan program aplikasi (application program misalnya OpenOffice.org), tingkatan sistem operasi (operating system misalnya Ubuntu), dan tingkatan bahasa pemrograman (yang dibagi lagi atas bahasa pemrograman tingkat tinggi seperti Pascal dan bahasa pemrograman tingkat rendah yaitu bahasa rakitan).

Perangkat lunak adalah program komputer yang isi instruksinya dapat diubah dengan mudah. Perangkat lunak umumnya digunakan untuk mengontrol perangkat keras (yang sering disebut sebagai device driver), melakukan proses perhitungan, berinteraksi dengan perangkat lunak yang lebih mendasar lainnya (seperti sistem operasi, dan bahasa pemrograman), dan lain-lain.

perkembangannya:

Rekayasa perangkat lunak telah berkembang sejak pertama kali diciptakan pada tahun 1940-an hingga kini. Fokus utama pengembangannya adalah untuk mengembangkan praktek dan teknologi untuk meningkatkan produktivitas para praktisi pengembang perangkat lunak dan kualitas aplikasi yang dapat digunakan oleh pemakai.

Periode Awal 1945 - 1965

Istilah software engineering digunakan pertama kali pada akhir 1950-an dan awal 1960-an. Saat itu, masih terdapat debat tajam mengenai aspek engineering dari pengembangan perangkat lunak.

Pada tahun 1968 dan 1969, komite sains NATO mensponsori dua konferensi tentang rekayasa perangkat lunak, yang memberikan dampak kuat terhadap perkembangan rekayasa perangkat lunak. Banyak yang menganggap bahwa dua konferensi inilah yang menandai awal resmi profesi rekayasa perangkat lunak.

Periode krisis perangkat lunak 1965 - 1985

Pada tahun 1960-an hingga 1980-an, banyak masalah yang ditemukan para praktisi pengembangan perangkat lunak. Banyak projek yang gagal, hingga masa ini disebut sebagai krisis perangkat lunak. Kasus kegagalan pengembangan perangkat lunak terjadi mulai dari projek yang melebihi anggaran, hingga kasus yang mengakibatkan kerusakan fisik dan kematian. Salah satu kasus yang terkenal antara lain meledaknya roket Ariane akibat kegagalan perangkat lunak.

1985 - kini: tidak ada senjata pamungkas

Selama bertahun-tahun, para peneliti memfokuskan usahanya untuk menemukan teknik jitu untuk memecahkan masalah krisis perangkat lunak.

Berbagai teknik, metode, alat, proses diciptakan dan diklaim sebagai senjata pamungkas untuk memecahkan kasus ini. Mulai dari pemrograman terstruktur, pemrograman berorientasi object, perangkat pembantu pengembangan perangkat lunak (CASE tools), berbagai standar, UML hingga metode formal diagung-agungkan sebagai senjata pamungkas untuk menghasilkan software yang benar, sesuai anggaran dan tepat waktu.

Pada tahun 1987, Fred Brooks menulis artikel No Silver Bullet, yang berproposisi bahwa tidak ada satu teknologi atau praktek yang sanggup mencapai 10 kali lipat perbaikan dalam produktivitas pengembangan perangkat lunak dalam tempo 10 tahun.

Sebagian berpendapat, no silver bullet berarti profesi rekayasa perangkat lunak dianggap telah gagal. Namun sebagian yang lain justru beranggapan, hal ini menandakan bahwa bidang profesi rekayasa perangkat lunak telah cukup matang, karena dalam bidang profesi lainnya pun, tidak ada teknik pamungkas yang dapat digunakan dalam berbagai kondisi.

Daftar Event Perkembangan Software


1956: Jhon bachus dan tim ibm nya menciptakan fortran dengan bahasa pemprograman tingkat tinggi.
1960: LISP meluncurkan model bahasa komputer untuk menulis program tiruan.
1965: orientasi bahasa benda dengan perakitan tambahan dengan simula,ditulis oleh kristen nygaard dan ole john dahl.
1969: bill gates&paul allen menyebutnya dengan “lake side programming group”menyetujui komputer dengan badan hukum pusat untuk mematenkan pdp-iq software.
1975: paul allen di dalam suratnya,bill gates menggunakan nama”micro-soft”menyerahkan kepada rekan kerja nya.untuk cepat2 menuliskan tentang referensi nya.
1976: untuk pertamakali nya microsoft di kembangkan,mereka menyebutnya dengan”the legend of micro-kid”.
1977: pemerintahan U.S mengadopsi data standar IBM,untuk membuka kode kunci pesan&untuk melindungi rahasia agensi mereka.
1978: microsoft mengumumkan produk ketiganya,MICROSOTF COBOL-80 dijual seharga 1 juta dolar U.S.
1979: micosoft mengumumkan,MICROSOFT BASIC untuk 8086 16 bit micropocessors.
1981:IBM memperkenalkan personal computer dengan penggunaan Microsoft 19 bit operting system,MS DOS 1.0,plus Microsoft BASIC,COBOL,PASCAL,dan produk Microsoft lainnya.
1983: Microsoft memperkenalkan word processing program,Microsoft word for MS DOS 1.00 .
1989: maxis memproduksi video game ,dengan kelas baru untuk pendidikan dan hiburan.
1995: windows 95 ships.
1997: deep blue defeats world chess champion.
1998: windows

Perangkat lunak

System perangkat lunak
Perangkat keras computer tidak dapat berbuat apa-apa tanpa adanya perangkat lunak.teknologi yang canggih dari perangkat keras akan berfungsi bila instruksi-instruksi tertentu telah di berikan kepadanya.intruksi2 tersebut disebut dengan perangkat lunak(software).intruksi2 perangkat lunak di tulis oleh manusia untuk mengaktifkan fungsi dari perangkat keras computer.

Perangkat keras computer mempunyai beberapa kegunaan yang sudah di bentuk&di pasang di dalamnya untuk dapat menanggapi instruksi2 yang diberikan.kalau seseorang harus menyusun perangkat lunak yang langsung berhubungan dengan perangkat keras terlebih dahulu,akan sangat sulit karena harus di ketahui secara persis cara kerja perangkat keras yang bersangkutan.kesulitan akan semakin bertambah karena peralatan yang berbeda mempunyai karakteristik dan cara operasi yang berbeda pula sehingga memerlukan perangkat lunak yang juga berbeda .
Untuk mengatasi hal ini,maka di buatlah suatu perangkat lunak yang di sebut dengan system operasi(operating system/OS)

Klasifikasi perangkat lunak
Perangkat lunak secara umum dapat dibagi menjadi 2 yaitu perangkat lunak system dan perangkat lunak aplikasi.
Perangkat lunak system dapat dibagi lagi menjadi 3 macam yaitu:

1. bahasa pemprograman:merupakan perangkat lunak yang bertugas mengkonversikan arsitektur&algoritma yang di rancang manusia ke dalam format yang dapat dijalankan computer,contoh bahasa pemprograman:BASIC,COBOL,pascal,C++,FORTRAN.
2. system operasi:saat computer pertama kali dihidupkan ,system operasilah yang pertama kali dijalankan,sistim operasi yang mengatur seluruh proses,menterjemahkan masukan,mengatur proses internal,memanajemen penggunaan memory dan memberikan keluaran ke peralatan yang bersesuaian,contoh system operasi:DOS,UNIX,Windows 95,IBM OS/2,Apple’s system.
3. Utility:system operasi merupakan perangkat lunak system dengan fungsi tertentu,misalnya pemerikasaan perangkat keras(hardware troubleshooting),memeriksa disket yang rusak(bukan rusak fisik),mengatur ulang isi harddisk(partisi,defrag),contoh utility adalah Norton utility

Hubungan antar perangkat keras dan perangkat lunak dapat digambarkan sbb:

User

Aplication software

Language software

Operating system

Hardware

System operasi
System operasi merupakan system perangkat lunak yang sudah ditulis oleh pabrik yang berfungsi sebagai antarmuka(interface)antara perangkat keras dan instruksi yang ditulis oleh pemakai(user).sistem operasi akan mengatur semua system operasi dari perangkat keras computer .sebagai contoh pemakai computer hanya menuliskan perintah DIR untuk menampilkan isi direktori ke layar tanpa harus mengetahui bagaimana perangkat keras tersebut melakukannya,karena tugas tersebut dilakukan oleh system operasi.

System operasi sangat berkaitan dengan prosesor yang digunakan.jenis prosesor pada PC yang umum adalah kompatibel dengan produk awal IBM dan Manchitos.PC Manchitos perangkat lunaknya dikembangkan oleh perusahaan yang sama sehingga perkembangannya tidak sepesat clonnig IBM PC.sistem operasi dari cloning IBM saat ini secara umum terbagi 2 aliran yaitu komersil yang di buat olehMicrosoft dan bersifat freware ,yang dikembangkan oleh peneliti seluruh dunia karena bersifat open source yaitu bahan baku pembuatnyadapat dibaca,sehingga hasilnya dapat ditambah atau di modifikasi setiap orang.

Sementara interaksi antara pengguna dan computer di kenal melalui 2 cara,cara yang pertama adalah pemberian instruksi melalui penulisan perintah atau dengan cara tunjuk(pointer) dengan tampilan grafis.

interpreter menterjemahkan instruksi satu persatu dan langsung di proses sebelum komputer membaca instruksi selanjutnya,sehingga tidak dihasilkan program obyek maupun file exe.contoh untuk ini adalah:basic versi baku,dbase,dan sebagainya.

Perangkat lunak bahasa merupakan program khusus yang sudah dibuat oleh pabrik computer atau perusahaan perangkat lunak yang digunakan untuk mengembangkan program aplikasi.program ini berfungsi sebgagai penterjemah program yang ditulis dengan bahasa pemprograman computer menjadi bahasa mesin yang dapat di mengerti oleh computer .bila perangkat lunak bahasa ini tidak tersedia,maka pembuat program harus menuliskan programnya langsung dalam bahasa mesin yang berbentuk bilangan biner,dan hal ini sangat sulit dan rumit.

Perangkat lunak bahasa dapat dikategorikan menjadi:
1. Assembler(perakit):merupakan program yang digunakan untuk menterjemahkan program aplikasi yang ditulis dengan bahasa rakitan(assembly language) atau bahasa pemprogaman simbolik menjadi bahasa mesin.

dengan bahasa simbolik,masing2 kode operasi mesin tidak ditulis dengan bentuk bilangan biner,tetapi dengan suatu kode simbolik tertentu yang disebut dengan mnemonic.program yang ditulis dengan bahasa simbolik disebut dengan program sumber(source program) dan hasil terjemahannya dalam bentuk bahasa mesin disebut dengan program objek(object program=OBJ).proses pembuatan program obyek dari program sumber juga akan menapilkan daftar keslahan2 sintaks(jika ada)yang dibuat oleh pemprogram.kesalahan ini harus dibetulkan terlebih dahulu sebelum di proses lebih lanjut.

Walau penulisan program dengan bahasa simbolik lebih mudah dibanding dengan bahasa mesin,tetapi harus dirasakan kesulitan karena penulis program harus:
• Mengetahui susunan serta fungsi dari masing2 register di dalam cpu.
• Mengetahui dengan persis cara alokasi memori komputer yang di gunakan.
• Mengetahui fungsi2 yang di sediakan oleh OS.

Untuk mengatasi hal ini telah dikembangkan suatu bahasa yang lebih dekat dengan pemakai komputer yang di sebut bahasa tingkat tinggi(high level language),misalnya basic,fortran,pascal c,dsb.
Program yang di tulis dengan bahasa tingkat tinggi ini harus di terjemahkan ke dalam bahasa mesin agar dapat di mengerti oleh komputer.penerjemah ini dapat berupa kompilator atau interpreter.kompilator menterjemahkan setiap instruksi didalam suatu program sekaligus sama dengan assembler dan menghasilkan dengan program objek yang selanjutnya di link sehingga menghasilkan file exe.contoh perangkat lunak bahasa seperti ini adalah pascal,c,dan masih banyak lagi.sedangkan interpreter menterjemahkan instruksi satu persatu dan langsung di proses sebelumkomputer membaca instruksi selanjutnya,sehingga tidak dihasilkan program obyek maupun file exe.contoh untuk ini adalah:basic versi baku,dbase,dan sebagainya.
2. compiler: menterjemahkan setiap instruksi didalam suatu program sekaligus sama dengan assembler dan menghasilkan dengan program objek yang selanjutnya di link sehingga menghasilkan file exe.contoh perangkat lunak bahasa seperti ini adalah pascal,c,dan masih banyak lagi.
3.interpreter: menterjemahkan instruksi satu persatu dan langsung di proses sebelum komputer membaca instruksi selanjutnya,sehingga tidak dihasilkan program obyek maupun file exe.contoh untuk ini adalah:basic versi baku,dbase,dan sebagainya.

Perangkat lunak aplikasi
Sistem operasi dengan perangkat lunak bahasa tidak di tunjukkan untuk menyelesaikan permasalahan dalam aplikasi tertentu yang dihadapi oleh pemakai komputer.program yang ditunjukan untuk menyelesaikan suatu permasalahan dalam aplikasi tertentu di sebut program aplikasi atau program paket.ada dua cara untuk bisa mendapatkan program aplikasi yang di butuhkan yaitu dengan mengembangkan sendiri(sangat sulit dan perlu keahlian khusus)atau membelinya(mudah)

Saat ini banyak sekali program2 aplikasi yang tersedia di pasaran.program2 ini dapat diandalkan,dapat memenuhi kebutuhan pemakai dirancang dengan baik,relatif bebas dari kesalahan,mudah digunakan(user friendly),mempunyai dokumen yang memadai dan didukung oleh purna jual yang baik.program2 paket ini di gunakan untuk menyelesaikan masalah2 umum seperti membuat dokumen(word star,microsoft word),membuat slide presentasi(ms power point),penerbitan(adobe page maker),mengelola gambar(adobe photoshop)dsb.akan tetapi bila kita mempunyai permasalahan yang sifatnya khusus da unik sehingga tidak ada paket2 program yang sesuai untuk digunakan,maka dengan terpaksa harus dikembangkan program aplikasi sendiri,misalnya program sistem sks universitas andalas,program sistem keuangan perusahaan,dll.

No comments:

Post a Comment