Kamis, 08 Desember 2011

Entity Relationship Diagram

Entity Relationship Diagram (ERD) merupakan notasi grafis dalam pemodelan data konseptual yang mendeskripsikan hubungan antara penyimpanan. ERD digunakan untuk memodelkan struktur data dan hubungan antar data, karena hal ini relatif kompleks. Dengan ERD kita dapat menguji model dengan mengabaikan proses yang harus dilakukan. Dan dengan ERD kita mencoba menjawab pertanyaan seperti; data apa yang kita perlukan? bagaimana data yang satu berhubungan dengan yang lain?
ERD menggunakan sejumlah notasi dan simbol untuk menggambarkan struktur dan hubungan antar data, pada dasarnya ada 3 macam simbol yang digunakan yaitu :
  1. Entiti: adalah suatu objek yang dapat diidentifikasi dalam lingkungan pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang akan dibuat. Sebagai contoh pelanggan, pekerja dan lain-lain. Seandainya A adalah seorang pekerja maka A adalah isi dari pekerja, sedangkan jika B adalah seorang pelanggan maka B adalah isi dari pelanggan. Karena itu harus dibedakan antara entitii sebagai bentuk umum dari deskripsi tertentu dan isi entiti seperti A dan B dalam contoh di atas. Entiti digambarkan dalam bentuk persegi empat.

Senin, 10 Oktober 2011

Sejarah Ilmu Komputer

Disiplin Ilmu Komputer sudah muncul sejak era tahun 1940, seiring dengan berpadunya teori algoritma dan logika matematika, serta ditemukannya sejarahkomputer elektronik dengan kemampuan penyimpanan program. Adalah Alan Turing dan Kurt Godel, yang pada tahun 1930-an berhasil memadukan algoritma, logika, dan penghitungan matematika serta merealisasikannya dalam sebuah alat atau rule system. Prinsip algoritma yang digunakan adalah dari Ada Lovelace, yang dikembangkan 60 tahun sebelumnya.

Penemu algoritma sendiri yang tercatat dalam sejarah awal adalah dari seorang yang bernama Abu Abdullah Muhammad Ibn Musa al Khwarizmi. Al Khwarizmi adalah seorang ahli matematika dari Uzbekistan yang hidup di masa tahun 770-840 masehi. Di literatur barat ia lebih terkenal dengan sebutan Algorizm. Kata algoritma sendiri berasal dari sebutannya ini. Sedangkan komputer analog diciptakan oleh Vannevar Bush pada tahun 1920, dan disusul dengan komputer elektronik yang dikembangkan oleh Howard Aiken dan Konrad Zuse tahun 1930.

Kemudian John Von Neumann mendemonstrasikan salah satu karya fenomenalnya pada tahun 1945, yaitu sebuah arsitektur komputer yang disebut "von Neumann machine", dimana program disimpan di memori. Arsitektur komputer inilah yang kemudian digunakan oleh komputer modern sampai sekarang.

Tahun 1960 adalah babak baru dimulainya formalisasi Ilmu Komputer. Jurusan Ilmu Komputer pada universitas-universitas mulai marak dibangun. Disiplin ilmu baru ini kemudian terkenal dengan sebutan Ilmu Komputer (Computer Science), Teknik Komputer (Computer Engineering), Komputing (Computing), atau Informatika (Informatics).

Definisi
Seiring dengan perkembangan Ilmu Komputer, dewasa ini banyak sekali peneliti yang mencoba membuat kajian dan melakukan pendefinisian terhadap Ilmu Komputer. Bagaimanapun juga, dasar Ilmu Komputer adalah matematika dan engineering (teknik). Matematika menyumbangkan metode analisa, dan engineering menyumbangkan metode desain pada bidang ini.

CSAB [3] (Computing Sciences Accreditation Board, http://www.csab.org) membuat definisi menarik tentang Ilmu Komputer:

Ilmu Komputer adalah ilmu pengetahuan yang berhubungan dengan komputer dan komputasi. Di dalamnya terdapat teoritika, eksperimen, dan pendesainan komponen, serta termasuk didalamnya hal-hal yang berhubungan dengan:

1. Teori-teori untuk memahami komputer device, program, dan sistem
2. Eksperimen untuk pengembangan dan pengetesan konsep
3. Metodologi desain, algoritma, dan tool untuk merealisasikannya
4. Metode analisa untuk melakukan pembuktian bahwa realisasi sudah sesuai dengan requirement yang diminta

Beberapa definisi lain yang lebih abstrak adalah:

Ilmu Komputer adalah ilmu yang mempelajari tentang representasi pengatahuan (knowledge representation) dan implementasinya.

ataupun definisi

Ilmu Komputer adalah ilmu yang mempelajari tentang abstraksi dan bagaimana mengendalikan kekompleksan.

Denning mendefinisikan Ilmu Komputer dalam makalahnya yang cukup terkenal tentang disiplin ilmu komputer [1]. Makalah ini adalah laporan akhir dari proyek dan task force tentang the Core of Computer Science yang dibentuk oleh dua society ilmiah terbesar bidang komputer, yaitu ACM [4] (http://acm.org) dan IEEE Computer Society [5] (http://computer.org).

Ilmu Komputer adalah studi sistematik tentang proses algoritmik yang mengjelaskan dan mentrasformasikan informasi: baik itu berhubungan dengan teori-teori, analisa, desain, efisiensi, implementasi, ataupun aplikasi-aplikasi yang ada padanya. Pertanyaan mendasar berhubungan dengan Ilmu Komputer adalah, "Apa yang bisa diotomatisasikan secara efisien".

Kita bisa simpulkan dari persamaan pemakaian terminologi dan hakekat makna dalam definisi yang digunakan para peneliti diatas, bahwa:

Ilmu Komputer adalah ilmu pengetahuan yang berisi tentang teori, metodologi, desain dan implementasi, berhubungan dengan komputasi, komputer, dan algoritmanya dalam perspektif perangkat lunak (software) maupun perangkat keras (hardware).

Persepsi Yang Salah Tentang Ilmu Komputer
Beberapa persepsi yang salah kaprah tentang Ilmu Komputer bisa kita rangkumkan seperti dibawah:

a.Ilmu Komputer adalah ilmu yang mempelajari tentang komputer. Ilmu Komputer bukanlah ilmu yang hanya mempelajari tentang komputer, seperti juga ilmu astronomi yang bukan ilmu tentang teleskop, atau ilmu biologi adalah juga bukan ilmu yang hanya mempelajari tentang mikroskop. Komputer, teleskop dan mikroskop adalah alat dari ilmu, dan bukan ilmu itu sendiri.

b.Ilmu Komputer adalah ilmu yang mempelajari tentang bagaimana menulis program komputer.

c.Ilmu Komputer adalah ilmu yang mempelajari tentang pengunaan aplikasi-aplikasi komputer.

Hubungan Informatika dengan bidang lain

Hubungan Informatika dengan bidang lain

Ilmu komputer berkaitan erat dengan beberapa bidang lain. Bidang-bidang ini tidak benar-benar terpisah, sekalipun mempunyai perbedaan penting.
Ilmu Informasi adalah ilmu yang mempelajari data dan informasi, mencakup bagaimana menginterpretasi, menganalisa, menyimpan, dan mengambil kembali. Ilmu informasi dimulai sebagai dasar dari analisa komunikasi dan basis data.
Sistem Informasi adalah aplikasi komputer untuk mendukung operasi dari suatu organisasi yaitu: operasi, instalasi, dan perawatan komputer, perangkat lunak, dan data. Sistem Informasi Manajemenadalah kunci dari bidang yang menekankan finansial dan personal manajemen. 'Sistem Informasi' dapat berupa gabungan dari beberapa elemen teknologi berbasis komputer yang saling berinteraksi dan bekerja sama berdasarkan suatu prosedur kerja (aturan kerja) yang telah ditetapkan, dimana memproses dan mengolah data menjadi suatu bentuk informasi yang dapat digunakan dalam mendukung keputusan.
Rekayasa Perangkat Lunak pada prinsipnya menekankan pada tahapan-tahapan pengembangan suatu perangkat lunak yakni : Analisis, Desain, Implementasi, Testing dan Maintenance. Pada tahap yang lebih luas Rekayasa Perangkat Lunak mengacu pada Manajemen Proyek pengembangan Perangkat Lunak itu sendiri dengan tetap memperhatikan tahapan-tahapan pengembangan sebelumnya.
Dalam pengembangannya perangkat lunak memiliki berbagai model yaitu model water fall ('model konvensional' sebagai model terdahulu yang dikembangkan dan karena model water fall nyaris sama dengan siklus hidup pengembangan sistem), model prototype ('model yang disukai oleh user dan pengembang), model sequensial linear, model RAD 'rapid aplikation model', model 'formal method' atau 'metode formal' disini sebelum diadakannya implementasi terlebih dahulu rancangan model yang dibuat diverifikasi terlebih dahulu sehingga tidak ada lagi kesalahan - kesalahan pada saat implementasi.
Rekayasa Komputer adalah ilmu yang mempelajari analisa, desain, dan konstruksi dari perangkat keras komputer.
Ilmu yang mempelajari segala aspek pembuatan, konstruksi, pemeliharaan perangkat lunak.
Keamanan Informasi adalah ilmu yang mempelajari analisa dan implementasi dari keamanan sistem informasi (termasuk Kriptografi).

Ilmu Komputer


Ilmu komputer (bahasa Inggriscomputer Science), secara umum diartikan sebagai ilmu yang mempelajari baik tentang komputasi, perangkat keras (hardware) maupun perangkat lunak (software). Ilmu komputer mencakup beragam topik yang berkaitan dengan komputer, mulai dari analisa abstrak algoritma sampai subyek yang lebih konkret seperti bahasa pemrogramanperangkat lunak, termasuk perangkat keras. Sebagai suatu disiplin ilmu, Ilmu Komputer lebih menekankan pada pemrograman komputer, dan rekayasa perangkat lunak (software), sementara teknik komputer lebih cenderung berkaitan dengan hal-hal seperti perangkat keras komputer (hardware). Namun demikian, kedua istilah tersebut sering disalah-artikan oleh banyak orang.

Tesis Church-Turing menyatakan bahwa semua alat komputasi yang telah umum diketahui sebenarnya sama dalam hal apa yang bisa mereka lakukan, sekalipun dengan efisiensi yang berbeda. Tesis ini kadang-kadang dianggap sebagai prinsip dasar dari ilmu komputer. Para ahli ilmu komputer biasanya menekankan komputer von Neumann atau mesin Turing (komputer yang mengerjakan tugas yang kecil dan deterministik pada suatu waktu tertentu), karena hal seperti itulah kebanyakan komputer digunakan sekarang ini. Para ahli ilmu komputer juga mempelajari jenis mesin yang lain, beberapa diantaranya belum bisa dipakai secara praktikal (seperti komputer neuralkomputer DNA, dan komputer kuantum) serta beberapa diantaranya masih cukup teoritis (seperti komputer randomand komputer oracle).
Ilmu Komputer mempelajari apa yang bisa dilakukan oleh beberapa program, dan apa yang tidak (komputabilitas dan intelegensia buatan), bagaimana program itu harus mengevaluasi suatu hasil (algoritma), bagaimana program harus menyimpan dan mengambil bit tertentu dari suatu informasi (struktur data), dan bagaimana program dan pengguna berkomunikasi (antarmuka pengguna danbahasa pemrograman).
Ilmu komputer berakar dari elektronikamatematika dan linguistik. Dalam tiga dekade terakhir dari abad 20, ilmu komputer telah menjadi suatu disiplin ilmu baru dan telah mengembangkan metode dan istilah sendiri.
Departemen ilmu komputer pertama didirikan di Universitas Purdue pada tahun 1962. Hampir semua universitas sekarang mempunyai departemen ilmu komputer.
Penghargaan tertinggi dalam ilmu komputer adalah Turing Award, pemenang penghargaan ini adalah semua pionir di bidangnya.
Edsger Dijkstra mengatakan:
Ilmu komputer bukan tentang komputer sebagaimana astronomi bukan tentang teleskop
Fisikawan Richard Feynman mengatakan:
Ilmu komputer umurnya tidak setua fisika; lebih muda beberapa ratus tahun. Walaupun begitu, ini tidak berarti bahwa "hidangan" ilmuwan komputer jauh lebih sedikit dibanding fisikawan. Memang lebih muda, tapi dibesarkan secara jauh lebih intensif!