Rabu, 10 Oktober 2018

Pengantar Teknologi Sistem Cerdas


PENGANTAR TEKNOLOGI SISTEM CERDAS

ARTIFICIAL INTELLIGENCE
Artificial Intelligence atau AI merupakan cabang ilmu komputer yang bertujuan untuk membuat sebuah aplikasi yang mampu menirukan cara kerja otak manusia, dengan menerima input pengetahuan dari pakar dalam bentuk fakta – fakta, teori, prosedur dan aturan, untuk kemudian diterapkan dalam proses pemecahan masalah di berbagai bidang.
Referensi : Suparman, 1991. Mengenal Artificial Intelligence. Yogyakarta: Penerbit Andi Offset.
1.     Kecerdasan Buatan vs Kecerdasan Alami
Kelebihan kecerdasan buatan :
1.     Lebih permanen.
2.    Memberikan kemudahan dalam duplikasi dan penyebaran.
3.    Relatif lebih murah dari kecerdasan alamiah.
4.    Konsisten dan teliti.
5.    Dapat didokumentasi.
6.    Dapat mengerjakan beberapa task lebih cepat dan lebih baik dibanding manusia.
Kelebihan kecerdasan alami :
1.     Bersifat lebih kreatif.
2.    Dapat melakukan proses pembelajaran secara langsung, sementara AI harus mendapatkan masukan berupa symbol dan representasi.
3.    Fokus yang luas sebagai referensi untuk pengambilan keputusan, sebaliknya AI menggunakan fokus yang sempit.
Referensi : Desiani, Anita & Arhami, Muhammad, 2006. Konsep Kecerdasan Buatan. Yogyakarta : Penerbit Andi Offset.
2.    Sejarah Kecerdasan Buatan
·         Cikal Bakal Kecerdasan Buatan (1943 – 1955)
·         Lahirnya Kecerdasan Buatan (1956)
·         Awal Perkembangan Kecerdasan Buatan (1952-1969)
·         Perkembangan Kecerdasan Buatan Mulai Melambat (1966-1974)
·         Sistem Berbasis Pengetahuan (1969-1979)
·         Kecerdasan Buatan Menjadi Sebuah Industri (1980-1988)
·         Kembalinya Jaringan Syaraf Tiruan (1986 – sekarang)
Referensi : Russell, Stuart & Norvig, Peter, 2003. Artificial Intelligence, A Modern Approach, [online], (http://xgxy.cug.edu.cn/rjgcx/lzw/AI/AIMA-Second-Edition.pdf, diakses pada 9 Oktober 2016).
3.    Konsep Dasar Artificial Intelligence
·         Acting Humanly : Pendekatan Uji Turing
·         Thinking Humanly : Pendekatan Model Kognitif
·         Thinking Rationally : The Laws of Thought Approach
·         Acting Rationally : The Rational Agent Approach
Referensi : Desiani, Anita & Arhami, Muhammad, 2006. Konsep Kecerdasan Buatan. Yogyakarta : Penerbit Andi Offset.
4.    Disiplin Ilmu Artificial Intelligence
·         Natural Languange Processing (NLP)
·         Expert System (ES)
·         Pattern Recognition (PR)
·         Robotic
Referensi : Abraham, David., Permana, Indra W., Nugraha, Rangga A., Alvian, Moch. & Hanif, 2015. Penyelesaian Masalah 8-Puzzle dengan Algoritma Steepest-Ascent Hill Climbing, [online], (http://jurnal.untirta.ac.id/index.php/jis/article/download/465/354, diakses pada 27 September 2016).

PEMROSESAN BAHASA ALAMI
Dua alasan utama mengapa agen komputer kita ingin dapat memproses bahasa alami: untuk berkomunikasi dengan manusia dan untuk memperoleh informasi dari bahasa tertulis. Faktor umum dalam menangani tugas-tugas ini adalah penggunaan model bahasa: model yang memprediksi distribusi probabilitas dari ekspresi bahasa.
1.     Model Bahasa
Bahasa pemrograman seperti Java atau Python, telah tepat mendefinisikan model bahasa. Model bahasa kita adalah sebuah perkiraan.
2.    Model karakter N-gram
Sebuah teks tertulis terdiri dari karakter. Dengan demikian, salah satu model bahasa yang paling sederhana adalah distribusi probabilitas atas urutan karakter. Salah satu tugas model karakter n-gram adalah identifikasi bahasa.
3.    Merapikan Model n-gram
Komplikasi utama dari model n-gram yaitu corpus pelatihan hanya menyediakan perkiraan distribusi probabilitas benar. 
4.    Evaluasi Model
Bagaimana kita tahu untuk memilih model apa? Kita dapat mengevaluasi model dengan cross-validasi. Membagi korpus menjadi korpus pelatihan dan korpus validasi.
5.    Model kata N-gram
Semua mekanisme yang sama berlaku sama untuk model kata dan karakter. Model   kata   n-gram   perlu   berurusan   dengan   kosa   kata. Tapi  dengan  model  kata  selalu  ada  kesempatan  untuk  sebuah  kata  baru  yang  tidak dilihat dalam  pelatihan  korpus.
6.    Klasifikasi Teks
Klasifikasi teks juga dikenal sebagai kategorisasi. Identifikasi bahasa dan klasifikasi genre adalah contoh dari klasifikasi teks, seperti analisis sentiment dan deteksi spam.
7.    Klasifikasi oleh kompresi data
Sebuah algoritma kompresi lossless mengambil urutan simbol, mendeteksi pola yang diulang di dalamnya, dan menulis deskripsi dari urutan yang lebih padat daripada yang asli.
8.    Pengambilan Informasi
Pengambilan informasi (IR) merupakan pencarian informasi berupa dokumen-dokumen yang relevan dengan kebutuhan pengguna informasi sehingga dapat memenuhi keinginan user.
9.    Fungsi Penilaian IR
Fungsi penilaian atau Scroing Function berasal dari proyek Okapi Stephen Robertson dan Karen Sparck Jones di London City College yang telah digunakan dalam mesin pencarian atau search engine.
10.  Sistem Evaluasi IR
Sistem evaluasi IR mengevaluasi apakah sebuah system IR bekerja dengan baik atau tidak, dengan menerjemahkan kebutuhan informasi kedalam kueri. Didalam evaluasi IR ini terdapat 3 level pengukuran yaitu pemrosesan, pencarian, dan kepuasan pemakai.
11.  Penyempurnaan IR
Sebagai  penyempurnaan  akhir,  IR  dapat  ditingkatkan  dengan  mempertimbangkan metadata-data  di  luar  teks  dokumen. 
12.  Algoritma PageRank
PageRank adalah salah satu ide – ide asli dua yang mengatur pencarian google dari mesin telusuri Web lain ketika diperkenalkan pada tahun 1997.
13.  The HITS algorithm ( Algoritma HITS )
Algoritma HITS (Hyperlink-Induced Topic Search algorithm), juga dikenal sebagai “Hub dan Otoritas”, merupakan algoritma link-analisis berpengaruh lainnya.
14.  Question answering
Sistem Question answering NLP ( pengolahan bahasa alami ) telah ada sejak 1960-an, namun barulah sejak 2001 sistem tersebut menggunakan pencarian informasi Web untuk meningkatkan cangkupan mereka secara radikal. 
15.  Information Extraction
Information extraction adalah proses memperoleh pengetahuan dengan membaca sekilas teks dan mencari kejadian dari kelas objek dan hubungan antara objek – objek. Tugasnya adalah untuk mengesktrak contoh alamat dari halaman Web.
16.  Finite-state automata untuk ekstraksi informasi
Tipe paling sederhana dari sistem ekstraksi informasi adalah sistem ekstraksi berbasis atribut yang mengasumsikan keseluruhan teks mengacu pada objek tunggal. 
17.  Model Probabilistik Untuk Ekstraksi Informasi(Informasi Turunan)
Model probabilistik sederhana untuk urutan dengan keadaan tersembunyi adalah model Markov yang tersembunyi, atau HMM.
 18.  Bidang acak bersyarat untuk ekstraksi informasi
Model HMM untuk mengurai teks dan memulihkan pembicara dan Semua yang kita butuhkan untuk memahami teks adalah model diskriminatif, yang bersyarat dari atribut tersembunyi
19.  Ekstraksi ontologi dari korporasi besar
Sebuah aplikasi yang berbeda dari teknologi ekstraksi adalah membangun basis pengetahuan besar atau ontologi fakta dari korpus.
20. Konstruksi template otomatis
Skema template-generasi sederhana dapat menemukan template untuk menjelaskan pencocokan. Bahasa template ini dirancang agar dekat pemetaan untuk pencocokan sendiri.
21.  Pembacaan mesin
Untuk membangun ontologi besar dengan banyak ribuan hubungan; Kami ingin memiliki sistem ekstraksi tanpa masukan manusia apapun — sebuah sistem yang bisa membaca sendiri dan membangun database-nya sendiri.



ROBOTIKA

Robotika adalah satu cabang teknologi yang berhubungan dengan desain, konstruksi, operasi, disposisi struktural, pembuatan, dan aplikasi dari robot. Robotika terkait dengan ilmu pengetahuan bidang elektronikamesinmekanika, dan perangkat lunak komputer.
Pemikiran tentang pembuatan mesin yang dapat bekerja sendiri telah ada sejak Era Klasik, namun riset mengenai penggunaannya tidak berkembang secara berarti sampai abad ke-20 . Kini, banyak robot melakukan pekerjaan yang berbahaya bagi manusia seperti menjinakkan bom, menjelajahi kapal karam, dan pertambangan.

Definisi Dan Sejarah Robot

Robot pertama kali dikembangkan oleh Computer Aided Manufacturing-International (CAM-1), “ Robot adalah peralatan yang mampu melakukan fungsi-fungsi yang biasa dilakukan oleh manusia, atau peralatan yang mampu bekerja dengan intelegensi yang mirip dengan manusia”. Definisi kedua, dikembangkan oleh Robotics Institute of America (RIA), perkumpulan pembuat robot yang lebih menitikberatkan terhadap kemampuan nyata yang dimiliki oleh robot terhadap kemiripannya dengan manusia.

Robot adalah peralatan manipulator yang mampu diprogram, mempunyai berbagai fungsi, yang dirancang untuk memindahkan barang, komponen-komponen, peralatan, atau alat-alat khusus, melalui berbagai gerakan terprogram untuk pelaksanaan berbagai pekerjaan. Secara mendasar, robot memilik banyak hal yang sama dengan otomasi internal, mereka memanfaatkan piranti tenaga yangserupa (seperti listrik, hidraulik, atau pneumatik) dan mereka dikendalikan melalui urutan-urutan yang telah dikendalikan melalui program, yang memungkinkan mesin tersebut pada posisi yang diinginkan. Lingkungan seperti ini didefinisikan sebagai lingkungan Dalam perkembangan mesin yang terotomatisasi ini akan menjadi bermacam-macam spesifikasi tergantung kebutuhan aktifitas manusia terhadap otomatisasi industri dan robotika.

 Robotika merupakan bidang dinamis yang perkembangannya maju pesat. Perkembangan ini selain melibatkan komputasi, permesinan danelektronika juga menyangkut perkembangan teknologi terapan. Penelitian dibidang terakhir ini biasanya berakar dari industri, untuk memecahkan masalah industri dengan teknologi yang ada. Misalnya adalah pengembangan perangkat lunak untuk mendapatkan algoritma baru bagi pengendalian robot, pengembangan sistem penglihatan dengan sistem resolusi yang lebih tinggi, perbaikan kemampuan sensor dan pengembangan protokol komunikasi untuk komunikasi dengan komputer dan peralatan pabrikSehingga robot diasmsikan sebagai gabungan antara perangkat mekanik dan perangkat elektronik yang berfungsi untuk menggantikan pekerjaan manusia yang beresiko tinggi, seperti pekerjaan pada temperatur yang tinggi, zat kimia, ruang hampa udara, dan pada kondisi yang tidak mungkin dikerjakan oleh manusia. Ada juga robot sebagai alat hiburan dan ada pula robotyang bertugas untuk menggantikan pekerjaan yang menuntut keahlian (accurary), kecepatan dan lain-lain. Ada pula robot yang berfungsi untuk mengerjakan pekerjaan yang rutin seperti robot pada pemintalan benang. Pada bidang pertahanan keamanan (Hankam), robot digunakan sebagai penjinak bom. Saat ini robot dikembangkan agar dapat berpikir sendiri dengan logika-logika yang telah ditanamkan pada software dalamrobot tersebut.

Ketika para pencipta robot pertama kali mencoba meniru manusia dan hewan, mereka menemukan bahwa hal tersebut sangatlah sulit; membutuhkan tenaga penghitungan yang jauh lebih banyak dari yang tersedia pada masa itu. Jadi, penekanan perkembangan diubah ke bidang riset lainnya. Robot sederhana beroda digunakan untuk melakukan eksperimen dalam tingkah laku, navigasi, dan perencanaan jalur. Teknik navigasi tersebut telah berkembang menjadi sistem kontrol robot autnomous yang tersedia secara komersial; contoh paling mutakhir dari sistem kontrol navigasi autonomous yang tersedia sekarang ini termasuk sistem navigasi berdasarkan-laser dan Visual Simultaneous Localization and Mapping (VSLAM) dari ActivMedia Robotics dan Evolution Robotics. Ketika para teknisi siap untuk mencoba robot berjalan kembali, mereka mulai dengan hexapod dan platform berkaki banyak lainnya. Robot-robot tersebut meniru serangga dan arthropod dalam bentuk dan fungsi. Trend menuju jenis badan tersebut menawarkan fleksibilitas yang besar dan terbukti dapat beradaptasi dengan berbagai macam lingkungan, tetapi biaya dari penambahan kerumitan mekanik telah mencegah pengadopsian oleh para konsumer. Dengan lebih dari empat kaki, robot-robot ini stabil secara statis yang membuat mereka bekerja lebih mudah. Tujuan dari riset robot berkaki dua adalah mencapai gerakan berjalan menggunakan gerakan pasif-dinamik yang meniru gerakan manusia.


Mengenal Konsep Dasar Robotika

Pemrograman Robotika
Kreativitas programer adalah kunci dari pemrograman robotika. Kreativitas programer akan menentukan program yang akan diinput ke robot sesuai dengan tujuan dibuatnya robot tersebut. Secara mendasar, program yang ditanamkan dalam chip kontroler robot berisi logika-logika seperti statement, instruksi, seleksi untuk dua kondisi atau lebih, dan perhitungan rumus dengan benar.

Bahasa Program Robotika
Di dalam pemrograman robotika, ada beberapa jenis bahasa program yang bisa digunakan oleh programmer. Programmer biasanya memilih salah satu bahasa program yang mereka sukai dan mudah dipahami. Dalam hal ini yang berperan penting adalah kemampuan seorang programmer menguasai bahasa mesin yang akan dikompilasi untuk dipasang dalam chip mikrikontroler. Di dalam robotika, bahasa program yang biasanya digunakan antara lain: C dan C++, Basic, Pascal, dan Assembler.
Susunan program robotika dalam membuat program hampir sama antara jenis bahasa program yang satu dengan yang lainnya. Bedanya terletak pada syntax yang merupakan simbol atau ciri khas pada setiap jenis bahasa program. Hal ini yang bisanya harus dipahami programmer pemula agar dalam penulisan program tidak terjadi kesalahan (error). Sebelum membuat program hendaknya kita membuat alur program (flowchart) yang akan dijalankan secara berulang oleh mikrokontroler atau sebaliknya. Setelah alur program dibuat maka selanjutnya penyusunan program sesuai dengan susunan dan syntax dari jenis bahasa program yang digunakan.
Terdapat berbagai macam apikasi simulasi, diantaranya adalah Proteus dan Myrio yang dapat digunakan untuk simulasi program sehingga dapat meminimalisir kesalahan-kesalahan saat perakitan robot yang akan kita buat. Simulator tersebut juga dapat diintegrasikan dengan peralatan luar seperti aktuator dan sensor. 

Penjelasan Dan Contoh Kasus Studi Di Dunia Nyata

 Robotika dalam industri sebenarnya sudah ada sejak lama, mulai sekitar abad 19 awal. Perlahan tapi pasti, robot pun akhirnya jadi andalan untuk menggantikan peran yang tak mungkin bisa dikerjakan manusia.

Robot pertama yang dikenal dibangun pada 1937, diprogram untuk menyusun balok-balok kayu. Robot industri ini diciptakan dengan tujuan untuk mempercepat proses di pabrik, meningkatkan produktivitas pabrik. 

Seiring waktu, teknologinya bertumbuh semakin maju, aplikasi robotika juga semakin mutakhir dan maju. Mulai dari sekadar memilih dan meletakkan, hingga pada proses perakitan dan pengelasan. 

Pabrik yang otomatis berarti mengimplementasikan berbagai sistem kontrol yang mengelola peralatan dan mesin. Tujuan otomatisasi adalah untuk mengoperasikan pabrik secara lebih efisien, produktif, dan menghasilkan output yang memiliki kualitas lebih tinggi. 

Menginstal robot ke dalam pabrik membantu bagian-bagian yang otomatis dalam lini produksi. Pekerjaan-pekerjaan yang otomatis diselesaikan dalam waktu yang lebih singkat. 

Pasalnya, robot tak hanya bergerak dengan cepat dan kecepatan yang konsisten, tapi juga mampu berfungsi di luar jam kerja untuk memenuhi tenggat waktu produksi. 

"Kekeliruan yang bisa saja terjadi dengan pekerjaan manual bisa diminimalisasi, sehingga memastikan kualitas yang lebih tinggi," kata Shermine Gotfredsen, General Manager Universal Robots Asia Pacific, Selasa (27/10/2015).

Menciptakan Lapangan Kerja

Tren teranyar dalam robot industri itu sama dengan saat bangkitnya komputer pada 1980-an. Walaupun komputer mengotomatisasi tugas-tugas yang biasanya menjadi tanggung jawab para sekretaris, ini tidak berarti bahwa pekerjaan sekretaris itu terancam keberadaannya. 

Sebaliknya, komputer adalah alat yang dipakai oleh para sekretaris untuk menyelesaikan tugas-tugas mereka secara lebih produktif. Seperti itu juga robot industri adalah alat yang bisa dipakai pabrik untuk membantu para pekerjanya di lini produksi. 

Mengingat manfaat yang bisa dihasilkan dari robot-robot, mereka juga akan membantu pabrik menciptakan lapangan kerja. Sebuah laporan pada 2013 oleh Metra Martech telah memperlihatkan bahwa robot industri diramalkan akan menciptakan antara 900.000 sampai 1,5 juta lapangan kerja dari 2012 sampai 2016. 

Sebagai contoh, perusahaan-perusahaan yang merasakan manfaat menjadi perusahaan yang semakin kompetitif sebagai hasil langsung karena memakai robot, cenderung juga akan mempekerjakan lebih banyak pekerja di masa depan untuk mendukung ekspansi produksi mereka. 

Robot tak hanya menciptakan lapangan kerja, tapi juga membuat tempat kerja makin atraktif. Robot industri bisa diatur untuk membantu pekerja di tempat kerja yang berbahaya di pabrik, seperti adanya bahan kimia berbahaya atau benda-benda berat. 

"Ini tidak hanya sangat membantu mengurangi risiko kecelakaan, tapi juga meningkatkan kesehatan mental dan motivasi para pekerja itu," kata Gotfredsen. 

Belakangan ini, industri makanan dan minuman telah terkena dampak penurunan permintaan ekspor dan depresiasi rupiah. Sebagai konsekuensi, manufaktur menghadapi peningkatan biaya operasional sebab mereka sangat tergantung pada bahan-bahan impor seperti gula, susu, dan kacang kedelai. 

"Untuk menghadapi tantangan ini, penting bagi 6.000 perusahaan manufaktur makanan dan minuman di Indonesia untuk mempertimbangkan mengadopsi solusi robotika," ujar Gotfredsen.

Produktivitas dan Efisiensi

Produktivitas dan efisiensi pada sebuah pabrik bisa ditingkatkan saat robot industri dipakai untuk menjalankan fungsi-fungsi pada lini produksi, seperti pengemasan dan palletizing, atau memilih dan menempatkan. 

"Sebagai contoh, pada lini produksi produk susu, robot berguna untuk mengangkat empat paket keju krim sekaligus dari sabuk conveyor dan memindahkannya ke tray plastik," ucap Gotfredsen.

Mengingat besarnya volume produksi, meningkatkan efesiensi di lini akhir akan berkontribusi mengurangi downtime, sementara mengoptimalkan produktivitas berarti bisa memenuhi permintaan yang lebih besar. 
 
Dengan robot-robot terkini yang memiliki antarmuka yang intuitif sehingga mudah untuk diprogram dan tubuh yang ringan, manufaktur akan menikmati fleksibilitas produksi. 

Ini sangat ideal di tengah kejenuhan di industri makanan dan minuman dengan makin beragamnya produk, siklus produk makin pendek, dan variasi pengemasan makin beragam. Perusahaan bisa belajar bagaimana memprogram dan memakai robot untuk mengotomatisasi lini produksi. 

Saat robot diintegrasikan dengan baik ke dalam proses atau pengemasan lini produk makanan dan minuman, operasional bisa makin dioptimalisasi untuk memenuhi berbagai variasi lini produk. 

Robot industri diklaim akan memainkan peranan kunci dalam membantu meminimalisasi ongkos produksi dan pada saat yang sama juga tetap kompetitif dengan pengurangan downtime

"Dengan cara ini, manufaktur di Indonesia bisa menghadapi melemahnya permintaan ekspor dan peningkatan ongkos produksi yang mempengaruhi performa bisnis industri makanan dan minuman," pungkas Gotfredsen.


Senin, 08 Oktober 2018

Bab 2 Perkembangan Perangkat Keras Dan Perangkat Lunak


Bab 2 Perkembangan Perangkat Keras & Perangkat Lunak

A.Pemahaman Komponen Perangkat Keras

1.     PENGERTIAN PERANGKAT KERAS (HARDWARE)

Untuk permulaan mari kita bahas terlebih dahulu tentang Pengertian perangkat keras atau dalam bahasa inggrisnya di sebut juga hardware adalah suatu bagian yang berkaitan dari sebuah komputer yang sifat alat nya bisa dilihat dengan kasat mata dan juga bisa diraba oleh indra peraba secara langsung atau yang berbentuk nyata dan tidak ghaib, yang berfungsi untuk mendukung proses berjalannya perintah-perintah yang di inginkan oleh user (proses komputerisasi).
Perangkat Keras atau Hardware ini dapat bekerja berdasarkan perintah yang telah ditentukan ada padanya, atau perintah-perintah yang telah di instal sebelumnya pada komputer, juga bisa disebut dengan istilah Instruction set Architecture (ISA) didefenisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat oleh pemrogram. Kemudian dengan adanya perintah yang dapat kita mengerti oleh hardware tersebut, maka hardware tersebut dapat melakukan berbagai kegiatan yang telah ditentukan oleh user, kalo kamu usernya ya pastinya bisa ditentukan oleh kamu.



Sebagaimana kita tau perangkat keras (hardware) komputer itu banyak macamnya. Agar mempermudah kita dalam memahaminya maka kita bagi ke dalam 4 kategori yaitu:
1.    Input Device : Alat input / masukan
2.    Process Device : Alat yang menjalankan proses sistem computer
3.    Output Device : Alat output / keluaran, menghubungkan sistem keluar
4.    Storage Device : Alat untuk menyimpan
Untuk memperjelas kategori–kategori tersebut serta perangkat keras mana saja yg termasuk dalam setiap kategori berikut penjelasannya:
1. Input Device
Input device adalah unit yg fungsinya sebagai media untk memasukkan data dari luar kedalam suatu memori dan processor untk diolah guna menghasilkan informasi yg diperlukan. Input devices yg umumnya digunakan pada computer (PC) adalah Keyboard, mouse, joystick, touch pad, scanner dan lain-lain.
·         Keyboard fungsinya memasukkan huruf, angka, karakter khusus, serta sebagai media bagi user (pengguna) untk melakukan perintah-perintah lainnya yang diperlukan, seperti menyimpan file, membuka file, dan perintah lainnya. 

·         Mouse fungsinya untuk memindahkan pointer atau kursor secara cepat serta menjalankan peritah klik kiri dan kanan.

·         Touch pad fungsinya yg sama dengan mouse namun memiliki bentuk yg berbeda yaitu berupa bantalan sensitif terhadap sentuhan, biasanya ada di laptop.

·         Joystick fungsinya untuk mengatur gerak suatu objek dalam komputer dengan menekan tombol – tombol yang ada pada perangkat, biasanya di gunakan untk bermain games pada komputer.

·         Scenner fungsinya sama seperti mesin fotocopy hanya saja berbeda hasilnya jika mesin fotocopy dapat dilihat di kertas sedangkan scenner dapat dilihat di layar monitor.
2. Process Device
Unit ini fungsinya untuk mengolah data yang sudah di masukkan melalui perangkat keras masukan. Berikut akan dijelaskan satu persatu yang termasuk dalam perangkat-perangkat pemrosesan.
·         Power supply (PSU) berfungsi untuk menyalurkan arus listrik ke seluruh perangkat keras komputer.

·         Motherboard fungsinya menghubungkan seluruh komponen penyusun sebuah computer , artinya mobo di sini mengemban tugas untk menghubungkan bahasa kode antar perangkat keras agar dapat disinergikan menjadi sebuah aktivitas kerja perangkat komputer.

·         Prosesor fungsinya mengeksekusi perhitungan kompleks yang memungkinkan computer untk bisa digunakan menjalankan program-program komputer, menjelajah internet, memutar lagu, dan menjalankan sistem operasi Anda.

·         RAM (Random Access Memory) fungsinya sebagai tempat penyimpanan data sementara. Memory bekerja dengan menyimpan dan menyuplai data-data penting yg dibutuhkan Processor dengan cepat untuk diolah menjadi informasi.

·         Vga card (kartu grafis) fungsinya adalah untuk mengubah atau menerjemahkan sinyal digital dari komputer ke monitor untk menampilkan grafis atau menciptakan tampilan-tampilan pada layar monitor.
3. Output Device
Output device adalah perangkat-perangkat komputer untuk menampilkan hasil akhir dari pengolahan yang dilakukan oleh CPU. Perangkat ini merupakan alat yg sangat penting peranannya bagi pengguna komputer karena akan memberikan hasil yg di inginkan dan dapat berbentuk pada sebuah media contohnya kertas. Berikut ini beberapa perangkat yg termasuk dalam output device.
·         Monitor fungsinya menampilkan dua data atau informasi dalam bentuk teks atau grafik.

·         Printer fungsinya untuk mencetak informasi yg dihasilkan oleh komputer pada media kertas.

·         Speaker adalah unit keluaran yg menghasilkan suara.
4. Storage Device
Storage atau biasa juga disebut memory adalah suatu tempat penyimpanan atau penampung data dan program. Contohnya seperti hardisk, fleshdisk, cd dan lainnya yg fungsinya sebagai media penyimpanan data.


B. Pemahaman Komponen Perangkat Lunak


1.  Pengertian Software

 

Pengertian Software komputer adalah perangkat lunak komputer untuk mengkontrol perangkat keras. Bisa juga diartikan sebagai data yang diprogram dan disimpan secara digital dalam bentuk aplikasi, termasuk program komputer, dokumentasinya, dan berbagai informasi yang bisa dibaca dan ditulis oleh komputer. Dengan kata lain, bagian sistem komputer yang tidak berwujud alias bekerja dibelakang layar atau sistem.

Karena disebut juga sebagai perangkat lunak, maka sifatnya juga berbeda dengan perangkat keras atau hardware, jika hardware adalah perangkat yang nyata yang dapat dilihat dengan jelas oleh mata dan dipegang secara langsung oleh manusia, maka software atau Perangkat lunak tidak dapat dipegang dan dilihat secara fisik, software memang tidak tampak secara fisik dan tidak berwujud benda namun bisa untuk dioperasikan dan dijalankan. Nah sekarang bagaimana, apakah sudah mulai ada gambaran mengenai pengertian dari software (perangkat lunak komputer)? Kalo sudah mulai ada gambaran, sekarang kita lanjutkan pembahasannya ke jenis-jenis software dan pembagian software.

2.  Jenis-jenis Software

 

Menurut jenisnya, software dapat dibedakan menjadi beberapa bagian diantaranya adalah sebagai berikut :

A. Freeware

Freeware (perangkat lunak gratis) adalah perangkat lunak komputer yang memiliki hak cipta yang gratis dan dapat digunakan tanpa batasan waktu, berbeda dengan shareware yang mewajibkan pemakainya membayar (misalnya setelah jangka waktu percobaan tertentu atau untuk memperoleh fitur tambahan). Para pengembang freeware biasanya membuat perangkat gratis "untuk disumbangkan kepada komunitas", namun juga tetap ingin mempertahankan hak mereka sebagai pengembang dan memiliki kontrol terhadap pengembangan aplikasi selanjutnya. terkadang jika para pengembang aplikasi memutuskan untuk berhenti mengembangkan sebuah produk freeware, mereka akan memberikan source code (kode sumbernya) kepada pengembang lain atau mengedarkan kode sumber tersebut kepada umum sebagai perangkat lunak bebas yang bisa dikembangkan secara bersama-sama.

B. Shareware

Shareware adalah perangkat lunak yang disediakan untuk pengguna tanpa membayar secara uji coba dan sering di batasi oleh kombinasi dari fungsi, ketersedian, atau kenyamanan. Jadi maklum saja kalo anda menggunakan aplikasi ini tidak bisa memanfaatkannya secara maksimal, karena aplikasi yang sharewaresebenarnya adalah aplikasi ujicoba.

Shareware sering ditawarkan sebagai aplikasi unduhan dari sebuah situs web yang disertai dengan sebuah bacaan seperti koran atau majalah. Alasan di balik perangkat lunak Shareware adalah memeberikan pembeli kesempatan untuk mencoba menggunakan program sebelum membeli lisensi untuk versi lengkap dari perangkat lunak kongsi tersebut. Ini juga dipakai sebagai strategi marketing pengembang aplikasi shareware. Makanya shareware juga biasa disebut dengan Trialware.

C. Firmware

Firmware adalah aplikasi yang mengacu kepada perangkat lunak yang disimpan di dalam Memori Read Only(hanya baca). Tidak seperti memori akses acak, Firmware tidak akan dapat berubah meski tidak dialiri listrik. Rutin-rutin yang mampu menyalakan komputer (startup) serta instruksi input/output dasar (semacam BIOS atau sistem operasi embedded) disimpan di dalam Firmware. Modifikasi memang masih bisa dilakukan, akan tetapi hal tersebut tergantung dari jenis ROM (Read Only Memory) yang digunakan. Firmware yang disimpan dalam ROM tidak dapat diubah, tetapi Firmware yang disimpan dalam ROM yang dapat diubah semacam EEPROM atau Flash ROM, masih dapat diubah sesuai dengan kebutuhan.

D. Commercial Software

Commercial Software (software berbayar) adalah perangkat lunak yang disalurkan atau dibuat untuk tujuan komersil, setiap pengguna yang ingin menggunakan atau mendapatkan software tersebut dengan cara membeli atau membayar pada pihak yang mendistribusikannya, bisa langsung kepada developers (pengembang) software, atau kepada rekanan dari pengembang software tersebut. pengguna yang menggunakan software berbayar biasanya tidak dilegalkan untuk menyebarluaskan atau membagikan ulang software yang sudah dibeli lisensinya secara bebas tanpa ijin dari penerbitnya. Contoh software berbayar ini misalnya adalah Microsoft Visual Basic NETAdobe PhotoshopCorel Draw dan masih banyak lagi yang lainnya. Commercial Software juga dilindungi oleh undang-undang hak cipta, dan untuk mendapatkannya kita harus membeli. Software ini dilarang keras untuk diperbanyak (secara ilegal pastinya).

E. Free Software

Free Software (perangkat lunak bebas) adalah istilah yang diciptakan oleh Richard Stallman dan Free Software Foundation (organisasi nirlaba dan merupakan sponsor utama dari proyek GNU) yang mengacu kepada perangkat lunak yang bebas untuk digunakan, dipelajari dan diubah serta dapat disalin dengan atau tanpa modifikasi, atau dengan beberapa keharusan untuk memastikan bahwa kebebasan yang sama tetap dapat dinikmati oleh pengguna-pengguna berikutnya. Bebas di sini juga berarti dalam menggunakan, mempelajari, mengubah, menyalin atau menjual sebuah perangkat lunak, seseorang tidak perlu meminta izin dari siapa pun. Dengan kata lain Anda bisa mengutak atik sesuka hati.

Evolusi Perangkat Lunak
Setelah kita membahas rekayasa perangkat lunak, kita sedikit mundur, untuk membahas evolusi perangkat lunak.  Pengembangan perangkat lunak dapat dibagi menjadi 4 tahap, yaitu :
Tahap Pertama (1950 – 1960)
Evolusi perangkat lunak tahap pertama dimulai pada awal 1950-an sampai pertengahan 1960. Pengembangan perangkat lunak pada tahap pertama mempunyai ciri-ciri berorientasi batch, distribusi softwareterbatas untuk kalangan tertentu sehingga apabila ada perusahaan yang ingin dibuatkan software khusus harus memesan terlebih dahulu.
Tahap Kedua ( 1960 – 1970)
Evolusi Perangkat Lunak Tahap Kedua dimulai pertengahan tahun 1960-an sampai awal tahun 1970-an.  Pengembangan perangkat lunak mempunyai ciri-ciri multi user.  Pengguna dari software sudah banyak dan bisa saling berbagi.   Ciri ini menunjukkan ada perkembangan baru yaitu interkasi manusia dan komputer (Human Computer Interaction).
Selain itu, ciri dari tahap kedua ini adalah real time. Real Time disini adalah suatu kondisi dimana sistem dapat mengumpulkan, menganalisa dan mentransformasikan data dari banyak sumber kemudian mengatur proses serta menghasilkan output yang diinginkan.  Dalam tahap ini, sudah banyak juga paket perangkat lunak yang beredar di pasaran serta muncul istilah database dalam perangkat lunak.
Tahap Ketiga (1970 – 1990)
Evolusi Perangkat lUnak tahap ketiga, dimulai pertengahan tahun  1970 sampai awal tahun 1990.  Pengembangan perangkat lunak sudah maju sedemikian pesat.  Perangkat lunak sudah menggunakan sistem terdistribusi, sehingga penyampaian informasi dari komputer sumber ke komputer tujuan akan terasa sangat cepat. Dalam era ini, perangkat keras dari suatu komputer harganya sangat murah.  Selain itu, pesanan perangkat lunak sudah sangat mendominasi dari penyelesaian suatu masalah sehingga penggunaan software pada masa itu sudah sedemikian jauh.
Tahap Keempat (1990 – 2000)
Evolusi Perangkat Lunak Tahap Keempat dimulai tahun 1990 sampai tahun 2000. Pada tahap ini, perangkat lunak sudah mendominasi dari pengembangan perangkat keras, sehingga perangkat keras dalam hal ini komputer sangat dikendalikan oleh suatu sistem operasi.  TIngkat kecerdasan dari perangkat lunak semakin ditingkatkan sehingga perangkat lunak atau software dilatih mempunyai kecerdasan seperti yang dimilik manusia.  Terbukti dengan adanya penemuan kecerdasan buatan, jaringan syaraf tiruan, sistem pakar dan logika fuzzy. Jaringan komputer, pemrosesan komputer paralel sangat mendominasi pada era ini.  Dan, pada masa ini pula pemrograman sudah berorientasi obyek (OOP).
Sumber :
Kristianto, Adi, 2004, Rekayasa Perangkat Lunak : KOnsep Dasar, Gava Media Yogyakarta
Davis, William S, 1983, Systems Analysis And Design : A Structural Approach, Addision Wesley Publishing Company
PRessman, Roger S 1982, Software Engineering : A Practitioner’s Aprroach, New York : MacGraw Hill COmpanies Inc

1.      sisitem Operasi ( Operating System)

    Sistem opersi yaitu program yang berfungsi untuk mengendalikan sisitem kerja yang mendasar sehingga mengatur kerja media input, output, tabel pengkodean, memori, penjadwalan prosesor, dan lain-lain. Sistem operasi berfungsi sebagai penghubung antar manusia (User) dengan perangakat keras (Hardware) dan perangkat lunak(Software) yang digunakan. Adapun fungsi utama sistem operasi adalah :
§  Menyimapan program dan aksesnya.
§  Membagi tugas didalam CPU.
§  Mengalokasikan tugaas-tugas penting.
§  Merekam sumber-sumbeer data.
§  Mengatur memori sistem termasuk penyimpanan, menghapus dan menadapatkan data.
§  Memeriksa kesalahan sistem.
§  Multitugas pada OS, Windows98, Windows XP, Windows 7.
§  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 (Aplicaton Programs)

   Proram aplikasi adalah perangkat lunak yang dirancang khusus untuk kebutuhan tertentu, misalnya program pengolah kata, pengolah lembar kerja, program presentasi, design grafis, dan lain-lain.

    3. Bahasa Pemrograman (Programing Utility)

    Perangkat lunak bahasa yaitu program yang di gunakan untuk menerjemahkan instruksi-intruksi yang ditulis dalam bahasa pemrograman ke bahasa mesin dengan aturan atau prosedur tertentu, agar di terima oleh komputer. Ada 3 level bahasa pemrograman, yaitu:
§  Bahasa tingkat rendah (Low Level Language) 
          Bahasa ini di sebut juga bahsa mesin (Assembler), dimana pengkodean bahasanya menggunakan kode angka 0 dan 1.
§  Bahasa tingkat tinggi(High Level Language)
       Bahasa ini termasuk dalam bahasa pemrogramana yang mudah di pelajari 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 beroreintasi pada objek yang disebut Object Oriented Programming (OOP). Contohnya: Visual Basic, Delphi, Visual C++.

     4. Program Bantu (Utility)

         Perangkat lunak yang berfungsi sebagai aplikasi pembantu dalam kegiatan yang ada hubungannya dengan komputer, serta merupakan perangkat lunak sistem dengan fungsi tertentu, misalnya memformat flashdisk, mengkopi data, mengkompres file dan pemeriksaan keras (Hardware Troubleshooting), mengatur isi ulang hardisk (partisi, defrag) dan lain-lain. Contohnya: Norton Utility, Antivirus, Winrar.

1.      Perangkat lunak system

 adalah suatu istilah generik yang merujuk pada jenis perangkat lunak komputer yang mengatur dan mengontrol perangkat keras sehingga perangkat lunak aplikasi dapat melakukan tugasnya. Ia merupakan bagian esensial dari sistem komputerSistem operasi adalah suatu contoh yang jelas, sedangkan OpenGL atau pustaka basis data adalah contoh lainnya. Perangkat lunak jenis ini dibedakan dengan perangkat lunak aplikasi, yang merupakan program yang membantu pengguna melakukan tugas spesifik dan produktif, seperti pengolahan kata atau manipulasi gambar.

1.1 Bahasa pemrograman
atau sering diistilahkan juga dengan bahasa komputer atau bahasa pemrograman komputer, adalah instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
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.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.

1.2 Sistem operasi
 (bahasa Inggrisoperating system) adalah perangkat lunak sistem yang mengatur sumber daya dari perangkat kerasdan perangkat lunak, serta sebagai jurik (daemon) untuk program komputer. Tanpa sistem operasi, pengguna tidak dapat menjalankan program aplikasi pada komputer mereka, kecuali program booting.
Sistem operasi mempunyai penjadwalan yang sistematis mencakup perhitungan penggunaan memori, pemrosesan data, penyimpanan data, dan sumber daya lainnya.
Untuk fungsi-fungsi perangkat keras seperti sebagai masukan dan keluaran dan alokasi memori, sistem operasi bertindak sebagai perantara antara program aplikasi dan perangkat keras komputer,[1][2] meskipun kode aplikasi biasanya dieksekusi langsung oleh perangkat keras dan seringkali akan menghubungi OS atau terputus oleh itu. Sistem operasi yang ditemukan pada hampir semua perangkat yang berisi komputer-dari ponsel dan konsol permainan video untuk superkomputer dan server web.
Contoh sistem operasi modern adalah LinuxAndroidiOSMac OS X, dan Microsoft Windows.