Rabu, 15 Februari 2012

PERANGKAT LUNAK (SOFTWARE)

PERANGKAT LUNAK (SOFTWARE)
Kita pasti sering mendengar yang namanya hardware dan software. keduanya merupakan satu kesatuan yang tidak dapat dipisahkan. tau kenapa??? karena hardware dan software harus saling bekerja sama agar bisa dioperasikan. contoh hardware itu misalnya monitor, keyboard, CPU, dll. klo software contohnya: windows, pengolah kata, winamp, dll. nah disini ada penjelasan mengenai software, mulai dari pengertian, macam-macamnya, evolusi dan model-model yg dimiliki.


PERANGKAT LUNAK (SOFTWARE)

A. PENGERTIAN
Perangkat lunak merupakan program komputer yang berfungsi sebagai sarana interaksi antara pengguna dan perangkat keras. Selain itu dapat juga dikatakan sebagai ‘penterjemah’ perintah-perintah yang dijalankan pengguna komputer untuk diteruskan ke atau diproses oleh perangkat keras.
Atribut Perangkat Lunak yang baik:
Perangkat Lunak seharusnya memberikan pengguna kebutuhan fungsionalitas dan unjuk kerja yang dapat:
•Maintanability
PL harus dapat memenuhi perubahan kebutuhan
•Dependability
PL harus dapat dipercaya
•Efisiensi
PL harus efisien dalam penggunaan sumber daya
•Usability
PL harus dapat digunakan sesuai dengan yang direncanakan


B.EVOLUSI PERANGKAT LUNAK
Evolusi Perangkat Lunak dibagi menjadi 4 Era yaitu:
1.Era Pioner: sambungan-sambungan kabel ke antar bagian dalam komputer. Cara lain dalam mengakses komputer adalah menggunakan punched card yaitu kartu yang di lubangi. (contoh: ENIAC)
2.Era Stabil: sistem basis data, yang memisahkan antara program (pemroses) dengan data (yang di proses) dan mampu menyelesaikan banyak pengguna (multi user) secara cepat/langsung (real time).
3.Era Mikro: automisasi mengarah ke suatu jenis kecerdasan buatan.
4.Era Modern: tingkat kecerdasan semakin meningkat , mulai bisa mengenal suara dan gambar. Contoh: Telephon, TV, AC


C.MACAM-MACAM PERANGKAT LUNAK
Macam Perangkat Lunak dibagi menjadi 3 bagian yaitu:
1.Perangkat Lunak Sistem
Merupakan software yang mengelola perangkat keras dan perangkat lunak yang digunakan komputer.
Contoh: DOS, Macintosh, Windows, dll
2.Perangkat Lunak Bahasa Pemrograman
Merupakan software yang berfungsi untuk membantu melakukan pembuatan program aplikasi komputer.
Contoh: Visual Basic, C++, dll
3.Perangkat Lunak Aplikasi
Merupakan software yang berfungsi utnuk membantu melakukan berbagai tugas perkantoran/aktivitas sehari-hari.
Contoh: pengolah kata, pengolah gambar, lembar sebar, dll


D.REKAYASA PERANGKAT LUNAK ATAU SOFTWARE ENGINEERING
merupakan disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Dalam RPL mengadopsi pendekatan yang sistematis dan terorganisir terhadap pekerjaannya. Selain itu juga menggunakan tool yang sesuai serta teknik yang ditentukan berdasarkan masalah yang akan dipecahkan, kendala pengembangan dan sumber daya yang tersedia.
Metode Rekayasa Perangkat Lunak:
Merupakan pendekatan terstruktur pengembangan PL termasuk model sistem, notasi, perancangan dan petunjuk pemrosesan. Terdiri dari:
•Deskripsi Model: deskripsi pemodelan dengan grafik
•Aturan: batasan yang digunakan pada model sistem
•Rekomendasi: saran dalam membentuk perancangan yang baik
•Petunjuk proses: aktifitas yang harus diikuti

E.MITOS SOFTWARE
1.Mitos Manajemen
a.Buku yang lengkap dan banyak sebagai referensi telah cukup untuk pengembangan sebuah software
b.Disediakan komputer terbaru
c.Jika pengembangan terlambat, tambahkan programmer baru
2.Mitos Pelanggan
a.Pernyataan umum sudah dapat digunakan untuk memulai pembuatan program
b.Kebutuhan proyek pengembangan software akan terus berubah, tapi perubahan dapat mudah diatasi
3.Praktisi
a.Sekali menulis programàdapat membuatnya bekerjaà pekerjaan selesai.
b.Untuk menilai kualitas programà membuat sendiri program itu bisa berjalan
c.Hasil akhir dari sebuah proyek à hanyalah dapat berjalan atau tidaknya program


F.SOFTWARE PROCESS
Merupakan serangkaian kegiatan dan hasil-hasil relevannya yang menghasilkan perangkat lunak sebagian besar dilakukan oleh perekayasa perangkat lunak. Ada 4 kegiatan/aktivitas pada proses PL :
•Spesifikasi Perangkat Lunak : Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.
•Pengembangan (Perancangan dan Implementasi) Perangkat Lunak: Perangkat lunak yang memenuhi spesifikasi harus di produksi.
•Validasi Perangkat Lunak : Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak melakukan apa yang diinginkan oleh pelanggan.
•Evolusi Perangkat Lunak: Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan.

G.MODEL KONVENSIONAL PROSES PL
Terdapat 4 jenis model, antara lain:
1.Model aliran kerja (workflow): menunjukkan kegiatan pada proses bersama dengan input, output, dan ketergantungannya. Merepresentasikan pekerjaan manusia.
2.Model aliran data (data flow): merepresentasikan proses sebagai suatu set kegiatan yang melakukan transformasi data. Menunjukkan bagaimana input ke proses, misalnya spesifikasi ditransformasi menjadi output, misalnya menjadi desain.
3.Model peran/aksi: merepresentasikan peran orang yang terlibat pada PL dan kegiatan yg menjadi tanggung jawab mereka.
4.Model air terjun (waterfall): Mengambil kegiatan dasar seperti spesifikasi, pengembangan, validasi, dan evolusi dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian dan seterusnya.


H.MODEL EVOLUSIONER
Model ini bersifat iteratif/ mengandung perulangan. Hasil proses berupa produk yang makin lama makin lengkap sampai versi terlengkap dihasilkan sebagai produk akhir dari proses. Selain itu tidak ada kegiatan spesifikasi, pengembangan, dan validasi yang terpisah. Kegiatan tersebut dilakukan pada saat yang bersamaan dengan umpan balik yang cepat untuk masing-masing kegiatan.


Gambar 1. Model Evolusioner

Kelebihan:
Lebih efektif dari pendekatan air terjun dalam menghasilkan sistem yang dibutuhkan
user mendapat pemahaman yang lebih baik dari masalah mereka

•Kekurangan:
Tidak ada visibilitas proses
Sistem biasanya tidak terstruktur dengan baik
Kemampuan khusus (misalnya bahasa untuk
prototipe cepat) kemungkinan diperlukan

•Aplikasi:
Untuk sistem interaktif berukuran kecil atau medium
Untuk bagian dari sistem besar (misalnya user interface)
Untuk sistem dengan daur hidup pendek

Terdapat 2 jenis model evolusioner yaitu:
1.Pengembangan Eksplotari
Tujuan: bekerja dengan pelanggan untuk menyelidiki persyaratan mereka dan mengirimkan sistem akhir.
Obyektif : bekerja dengan konsumen dan melibatkan sistem akhir dari spesifikasi skema inisial. Dimulai dengan kebutuhan yang dimengerti dengan baik.
2.Prototipe yang dapat dibuang (throw-away) à
Berkonsentrasi pada eksperimen, dengan persyaratan pelanggan yang tidak dipahami dengan baik.
Obyektif : mengerti kebutuhan sistem. Dimulai dengan kebutuhan yang tidak dimengerti dengan baik.

Selain 2 model di atas, masih terdapat 2 jenis model berdasarkan Mills dan Boehm yaitu:
1.Incremental Model (Original: Mills)
•berdasarkan model sistem yang dipecah sehingga model pengembangannya secara increment/bertahap.
•Masalah :
1.cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
2.mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment


Gambar 2. Incremental Model

2.Spiral Model (Original: Boehm)
•Setiap loop mewakili satu fase dari software process.
•Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya
•Masalah:
Membutuhkan waktu yang cukup panjang , sehingga waktu yang lama sama dengan biaya yang lebih besar.


Gambar 3. Spiral Model

Macam-macam Perangkat Lunak
Perangkat lunak terbagi menjadi 4 macam, yaitu :
  1. Sistem Operasi (Operating System),
  2. Program Aplikasi (Application Programs),
  3. Bahasa Pemrograman (Programming Language),
  4. Program Bantu (Utility)
1.  Sistem Operasi (Operating System)
Sistem Operasi yaitu program yang berfungsi untuk mengendalikan sistem kerja yang mendasar sehingga mengatur kerja media input, output, tabel pengkodean, memori, penjadwalan prosesor, dan lain-lain. Sistem operasi berfungsi sebagai penghubung antara manusia dengan perangkat keras dan perangkat lunak yang akan digunakan. Adapun fungsi utama sistem operasi adalah :
  • Menyimpan program dan aksesnya
  • Membagi tugas di dalam CPU
  • Mengalokasikan tugas-tugas penting
  • Merekam sumber-sumber data
  • Mengatur memori sistem termasuk penyimpanan, menghapus dan mendapatkan data
  • Memeriksa kesalahan sistem
  • Multitugas pada OS/2″, Windows ’95″, Windows ’98″, Windows NT”, /2000/XP
  • Memelihara keamanan sistem,   khusus pada jaringan yang membutuhkan kata sandi (password) dan penggunaan ID
Contoh Sistem Operasi, misalnya : Disk operating System (DOS), Microsoft Windows, Linux, dan Unix.
2.  Program Aplikasi (Aplication Programs)
Program Aplikasi adalah  perangkat lunak yang dirancang khusus untuk kebutuhan tertentu, misalnya program  pengolah kata, mengelola lembar kerja, program presentasi, design grafis, dan lain-lain.
3. Bahasa Pemrograman (Programming Language)
Perangkat lunak bahasa yaitu program yang digunakan untuk menerjemahkan instruksi-instruksi yang ditulis dalam bahasa pemrograman ke bahasa mesin dengan aturan atau prosedur tertentu, agar diterima oleh komputer.
Ada 3 level bahasa pemrograman, yaitu :
  • Bahasa tingkat rendah (low level language)
Bahasa ini disebut juga bahasa mesin (assembler), dimana pengkodean bahasanya menggunakan kode angka 0 dan 1.
  • Bahasa tingkat tinggi (high level language)
Bahasa ini termasuk dalam bahasa pemrograman yang mudah dipelajari oleh pengguna komputer karena menggunakan bahasa Inggris. Contohnya : BASIC, COBOL, PASCAL, FORTRAN.
  • Bahasa generasi keempat (4 GL)
Bahasa pemrograman 4 GL (Fourth Generation Language) merupakan bahasa yang berorientasi   pada objek yang disebut Object Oriented Programming (OOP). Contoh software ini adalah : Visual Basic, Delphi, Visual C++
4. Program Bantu (Utility)
Perangkat Lunak merupakan perangkat lunak yang berfungsi sebagai aplikasi pembantu dalam kegiatan yang ada hubungannya dengan komputer, misalnya memformat disket, mengopi data, mengkompres file, dan lain-lain.
Contoh software ini diantaranya :
  • Norton Utility
  • Winzip
  • Norton Ghost
 a. Berdasarkan Kegunaan untuk Pemakai
1. Perkantoran
Contoh aplikasi perkantoran adalah Microsoft Office dan OpenOffice. Microsoft office memiliki banyak aplikasi yaitu Word untuk pengolah kata, Excel pengolah data, PowerPoint untuk presentasi dan Project untuk mengelola sebuah proyek.
2. Hiburan
Contoh aplikasi hiburan adalah Winamp, Windows Media Player dan Xing MPEG. Winamp dipergunakan mendengarkan musik. Windows Media Player dan Xing MPEG dipergunakan menonton film.
3. Komunikasi
Contoh program komunikasi adalah Yahoo!Messenger (YM) dan Microsoft Outlook. YM dipergunakan untuk chatting dengan sesama pengguna YM. Microsoft Outlook dipergunakan untuk membaca dan mengirimkan email.

b. Berdasarkan Lingkungan Kerja
1. Desktop
Program yang dibuat akan menerima input, memproses, mengeluarkan output dan menyimpan data pada satu sistem komputer. Berdasarkan hubungan antar program, program Desktop dibagi menjadi yaitu:
a. Stand Alone
Program yang tidak membutuhkan program yang lain untuk bekerja. Misal Microsoft Word.
b. Client-Server
Program yang membutuhkan program yang lain untuk bekerja. Client-Server berarti ada 2 program yang berjalan yaitu Client dan Server. Misal Mozilla Firefox adalah program client, sedangkan Web Server adalah program server. Untuk membuka halaman web, Client (Browser) akan menghubungi (Request) Web Server, kemudian Web Server akan memberikan (Response) halaman web dan dibuka oleh Browser.
2. Web Based
Program yang dibuat akan menerima input dan mengeluarkan output pada satu sistem komputer klien sedangkan proses dan penyimpanan dilakukan pada komputer yang lain yang disebut sebagai Web Server. Program Web Based akan diinstal pada Web Server, ketika Web Server dihubungi oleh Client (Browser) maka Web Server akan menjalankan program yang sudah diinstal, kemudian program memberikan hasilnya kepada Web Server dan Web Server mengirimkan halaman web kepada Browser. Web Server hanya menjadi jembatan bagi program Web Based dengan Browser.

b. Berdasarkan Cara Kerja
1. Bekerja secara Background
Aplikasi Background adalah program yang berjalan di belakang layar dan bekerja tanpa adanya perintah langsung dari pengguna. Biasanya aplikasi background berjalan ketika komputer dinyalakan. Aplikasi yang bekerja secara background misalnya adalah Anti Virus. Pengguna tidak pernah memerintahkan Anti Virus bekerja, tapi ketika ada file bervirus berada dalam folder yang sedang dibuka pengguna, otomatis Anti Virus akan menangkap dan menghapusnya. Program Anti Virus akan dimatikan ketika komputer dimatikan.
2. Bekerja di Depan Layar
Aplikasi ini bekerja karena diperintahkan oleh pengguna misal Microsoft Word.

c. Berdasarkan Cara Mendapatkannya
1. Komersial
Perangkat lunak yang harus dibeli, Ada hak cipta dari pembuat aplikasi. Misal Microsoft Windows.
2. Domain-publik
Perangkat lunak bersifat gratis dan tidak ada hak cipta.
3. Shareware
Gratis untuk dipergunakan tapi terkadang meminta donasi. Misal BitTorrent.
4. Freeware
Perangkat lunak yang dipergunakan tanpa membayar sama sekali.
5. RentalWare
Perangkat lunak yang disewakan untuk jangka waktu tertentu.
6. Free Software
Perangkat lunak yang dilengkapi dengan kode sumber dapat dipergunakan oleh siapa saja dan gratis.
7. OpenSource
Perangkat lunak yang kode sumbernya harus dibuka, gratis dan jika dikembangkan harus dengan kode sumbernya. Misal adalah Linux.

Tidak ada komentar:

Posting Komentar