SEJARAH PERKEMBANGAN HARDWARE
Komputer dari sejak
awal dibuatnya, hingga kini banyak mengalami perubahan dan penyempurnaan bentuk
dan fungsinya. Pada tahun 1930, lahirlah suatu konsep dari komputer-komputer
seba guna yang menjadi awal dari komputer modern saat ini. Ditambah lagi dengan
perkembangan masyarakat yang makin kompleks dan dengan kemajuan teknologi yang
telah mendorong orang-orang berbakat untuk berpikir secara pesat. Pada tahun
1937, Alan Turin seorang ahli matematika bangsa Inggris membuat sebuah analisis
teoritis dari kemungkinan pengembangan komputer yang serba guna. Pelaksanaan
gagasan tersebut dapat segera terwujud, karena pada Perang Dunia II pihak
militer sangat membutuhkan perhitungan-perhitungan yang cepat, matang, dan
akurat untuk kebutuhan perang, sehingga dari gagasan tersebut perkembangan
perangkat keras (hardware) mengalami perubahan bentuk dan fungsinya, dan
perangkat lunak (software) mengalami perkembangan penggunaannya menjadi program
yang mudah digunakan.
A. Perkembangan Hardware
Kemajuan teknologi yang dibuat manusia telah mengubah bentuk dan fungsi
komputer tersebut dalam beberapa generasi, yaitu :
1. Generasi Pertama (1946-1959)
Komputer generasi pertama dibuat masih sangat sederhana dan belum kompleks
penggunaannya, sehingga komputer generasi pertama belum dapat memproses
masalah-masalah yang besar. Komputer dalam prosesnya serta pembuatnya masih
menggunakan komponen yang besar-besar.

Adapun ciri-ciri komputer generasi pertama, antara lain :
a. Ukuran fisiknya besar.
b. Kecepatan prose lambat.
c. Cepat panas.
d. Membutuhkan listrik yang besar.
e. Menggunakan tabung hampa udara (Vaccum tube).
f. Memorinya menggunakan Magnetic Core Storage.
g. Masih menggunakan bahasa mesin (Machine Language).
h. Menggunakan konsep Stored Program.
Contoh komputer generasi pertama :
- MARK I, MARK II, IBM 702, IBM 704, IBM 709 (dibuat oleh IBM/International
Business Machine).
- UNIVAC II (dibuat oleh Sperry Rand).
- ENIAC (Electronic Numerical Integrator and Calculator), dibuat oleh DR. John
W. Mauchly pada tahun 1942. Komputer ini berukuran besar dan berat fisiknya
mencapai 30 ton.
- SEC (Simple Electronic Computer), dibuat oleh Electronic Computation
Laboratory of Birkbeck College pada tahun 1951.
- Datamatic 1000 (dibuat oleh Honeywell).
- NCR 102A, NCR 102D (dibuat oleh National Cash Register).
2. Generasi Kedua (1959-1965)
Pembuatan komputer generasi kedua ini merupakan pengembangan dari komputer
generasi pertama yang dibuat untuk menyempurnakan bentuk dari komponen dan
penggunaan listrik yang lebih hemat.

Komputer generasi kedua mempunyai ciri-ciri sebagai berikut :
a. Komponen telah menggunakan transistor.
b. Ukuran fisiknya lebih kecil.
c. Kecepatan prosesnya lebih cepat.
d. Tidak cepat panas.
e. Membutuhkan listrik lebih sedikit.
f. Memori yang digunakan lebih besar.
g. Telah menggunakan bahasa tingkat tinggi (high level language).
h. Sudah dapat digunakan untuk real time (informasi yang dibutuhkan dapat
dihasilkan dengan sekejap) dan time sharing (komputer digunakan bersama-sama
dan komputer dapat membagi waktu untuk tiap-tiap pemakai).
Contoh komputer generasi kedua :
- IBM 7070, IBM 7080, IBM 1400, IBM 1600 (dibuat oleh IBM/International
Business Machine).
- Honeywell 400, Honeywell 800 (dibuat oleh Honeywell).
- Burroughs 200 (dibuat oleh Burroughs).
- GE 635, GE 645, GE 200 (dibuat oleh General Electric).
- UNIVAC III, UNIVAC SS80, UNIVAC SS90, UNIVAC 1107 (dibuat oleh Sperry Rand).
- NCR 300 (dibuat oleh National Cash Register).
3. Generasi Ketiga (1965-1970)
Komputer generasi ketiga dibuat dengan menggabungkan beberapa komponen dalam
satu tempat dan disempurnakan tampilan dari komputer tersebut. Selain itu,
komputer generasi ketiga telah dibuat penyimpanan memorinya lebih besar dan
diletakkan di luar (eksternal) penggunaan listriknya lebih hemat dibandingkan
komputer generasi kedua dan ukuran fisiknya dibuat menjadi lebih kecil, agar
dapat menghemat penggunaan ruang.

Komputer generasi ketiga mempunyai ciri-ciri sebagai berikut :
a. Komponen telah menggunakan IC (Integrated Circuit) atau yang disebut
"chip" dalam bentuk Hybrid Integrated Circuits atau Solid Logic
Technology (SLT), yaitu transistor dan dioda diletakkan secara terpisah dalam
satu tempat.
b. Kecepatan prosesnya lebih cepat.
c. Membutuhkan listrik lebih hemat.
d. Memorinya yang digunakan lebih besar, dapat menyimpan sampai ratusan ribu
karakter.
e. Telah menggunakan penyimpanan luar yang bersifat random access, yaitu
magnetik disk yang berkapasitas besar.
f. Dapat digunakan untuk multi processing dan multi programming.
g. Telah dibuatnya alat input-output dengan menggunakan visual display terminal
yang dapat menampilkan grafik, dapat menerima dan mengeluarkan suara, dan telah
digunakannya alat pembaca tinta magnetik MICR (Magnetic Ink Character Reader).
Contoh komputer generasi ketiga :
- GE 600, GE 235 (dibuat oleh General Electric).
- Burroughs 5700, Burroughs 6700, Burroughs 7700 (dibuat oleh Burroughs).
- UNIVAC 1108, UNIVAC 9000 (dibuat oleh Sperry Rand).
4. Generasi Keempat (1970-1995)
Komputer generasi keempat merupakan pengembangan dari komputer generasi ketiga.
Komputer ini dibuat dengan menggabungkan beberapa IC yang dipadatkan, yang
dalam komputer generasi ketiga belum dapat digabungkan.

Komputer generasi keempat mempunyai ciri-ciri sebagai berikut :
a. Telah menggunakan LSI (Large Scale Integration), yaitu penggabungan
beribu-ribu IC yang dipadatkan dalam 1 buah chip.
b. LSI dikembangkan menjadi VLSI (Very Large Scale Integration) yang dapat
memuat 150.000 transistor yang dipadatkan.
c. Chip yang digunakan telah berbentuk segi empat yang membuat
rangkaian-rangkaian terpadu.
Contoh komputer generasi keempat :
- IBM 370 (dibuat oleh IBM/International Business Machine).
- APPLE II (dibuat oleh Apple).
Untuk komputer generasi yang akan datang, banyak menggunakan sensor-sensor
untuk mempermudah dan mempercepat pekerjaan kita, dan komputer yang akan datang
dibuat untuk mempermudah interaksi antara manusia dengan komputer secara
langsung yang seakan-akan manusia tersebut berada dalam komputer. Ini dapat
terwujud dengan adanya materi kecerdasan buatan (Artificial Intelligent), yaitu
suatu peralatan yang dibuat untuk dapat bekerja seperti manusia, sehingga
manusia bukan lagi sebagai obyek diluar komputer, melainkan manusia akan
dilibatkan langsung sebagai objek di dalam komputer. Hal ini dapat anda lihat
dengan dibuatnya sebuah alat untuk simulasi komputer, dimana manusia dengan
menggunakan helm khusus agar tampak seperti di dalam komputer. Selain itu, kini
telah dibuat robot-robot pengganti tenaga manusia. Pada robot tersebut
dibuatkan sensor-sensor pendeteksi rangsangan dari luar dan akan langsung
meresponnya seperti layaknya manusia.
SEJARAH PERKEMBANGAN SOFTWARE
Pengertian Software dan Sejarah Perkembangan Software Komputer
Software Komputer adalah kumpulan
dari intruksi atau statement yang di susun secara logis dan berbentuk kode yang
hanya dapat di mengerti oleh komputer. Teori pertama tentang Software Komputer
diusulkan oleh Alan Turing pada tahun 1935-nya nomor esai Komputasi dengan aplikasi
ke (masalah Keputusan) Entscheidungsproblem. “Software” istilah pertama kali
digunakan di cetak oleh John W. Tukey pada tahun 1958. Dalam ilmu komputer dan
rekayasa Software, Software adalah semua informasi diproses oleh program sistem
komputer, dan data.
Software Komputer ini berangsur-angsur
mengalami perkembangannya. Berdasarkan perkembangannya, Sejarah Perkembangan Software Komputer dibagi
dalam beberapa era yaitu Era Pioneer, Stabil, Mikro, dan Modern. Berikut adalah
Sejarah Perkembangan Software Komputer :
1. Era Pioneer. Pada Era Pioneer ini
bentuk software komputer pada awalnya adalah sambungan-sambungan kabel ke antar
bagian dalam komputer, Cara dalam mengakses komputer adalah menggunakan punched
card yaitu kartu yang di lubangi. Penggunaan komputer dengan sebuah program
yang digunakan untuk sebuah mesin tertentu dan untuk tujuan tertentu. Di era
ini software komputer merupakan satu kesatuan dengan sebuah hardware komputer.
2. Era Stabil. Pada Era ini
software komputer yang dijalankan bukan lagi satu-satu, tapi sudah banyak
proses yang di lakukan secara bersamaan (multi tasking). Software Komputer pada era stabil ini juga mampu
menyelesaikan banyak pengguna (multi user) dan secara cepat/langsung (real
time). Di era ini jugalah mulai di kenal sistem basis data, yang memisahkan
antara program dan data .
3. Era Mikro. Pada Era Mikro
ini software komputer dapat dibedakan menjadi beberapa bagian yaitu Software
Sistem (Windows, Linux, Machintos, dll), Software Aplikasi (Ms.Office,
OpenOffice, dll) dan Languange Software/Bahasa Pemograman (Assembler, Visual
Basic, Delphi, dll).
4. Era Modern. Pada Era Modern
ini software komputer tidak hanya untuk sebuah komputer tetapi sebuah handphone
pun telah di lengkapi dengan sebuah software sistem seperti Android, Symbian,
dll. Tingkat kecerdasan yang ditunjukkan oleh software komputer pun semakin
meningkat, selain permasalahan teknis, software komputer sekarang juga mulai
bisa mengenal suara dan gambar.
|
 |
| Dapat menampilkan grafik dengan sangat sempurna |
Software Era Modern
|
Tahun-tahun Penemuan
Software Komputer
# Pada tahun 1945 sampai
1965
Istilah software engineering digunakan
pertama kali pada akhir 1950-an dan awal 1960-an. 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.
# Pada tahun 1965 sampai
1985
Pada tahun ini banyak masalah yang
ditemukan para praktisi pengembangan perangkat lunak. Pada tahun ini disebut
juga sebagai krisis perangkat lunak. Karena banyak projek yang gagal dalam
pengembangan perangkat lunak komputer ( software komputer). Dalam projek ini
banyak kasus-kasus yang terjadi, salah satu yang paling terkenal adalah
meledaknya roket Ariane akibat kegagalan perangkat lunak.
# Pada tahun 1985
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
praktik yang sanggup mencapai 10 kali lipat perbaikan dalam produktivitaspengembangan perangkat lunak dalam tempo 10 tahun.
Mengembangkan sistem software yang
kompleks,cukup kompleks, membutuhkan waktu dan biaya yang cukup besar. kita
akan melihat pada lima metodologi secara garis besar yang biasanya dikembangkan
dan digunakan:
1. Structured Programming - Sturctured
programming berurusan dengan penggunaan blok sturktur, state procedure call,
dan beragam konstruksi loop yang sesuai. Kita dapatkan mantra baru untuk
ini:”go to considered harfull”(kita mencari hal yang diperkirakan
salah/merugikan).Ide yang cukup jelas untuk memberikan pengetahuan/pengertian
terhadap flow kontrol program dengan mudah, agar program disusun secara
terstruktur dan transparan. Penulis berpendapat bahwa ide dari structured
programming telah terintegrasi pada semua metodologi yang muncul setelahnya.
2. Object Oriented Programming - Metodologi
Object Oriented Programming (OOP) berkembang dari ide structrured programming.
OOP mengatur komplesitas software dengan memaketkan kode dan data yang biasa
digunakan bersama. sebagai object software dan juga sebagai model benda
non-material seperti prosess, cara mengorganisasi informasi dan lain sebagainya
sebagai object software.
Sebuah object software dapat menjaga
internal statenya sendiri. Hal ini sangat berbeda dengan program terstruktur
yang kodenya bisa terstruktur dan dapat dimengerti dengan mudah, tetapi global
data yang dipakai bersama terdapat pada semua bagian sistem software-termasuk
didalamnya bagian tanpa kebutuhan untuk akses atau modifikasi data tersebut.
3. Design Patterns - Pada
pengembangan software, penggunaan design patern didasarkan pada observasi bahwa
beberapa proyek software gagal sementara proyek yang mirip berhasil (hal ini
dapat berupa pola managemen, pole penjadwalan, pola testing dll). pada desain
software, penggunaan pola didasarkan pada observasi lebih lanjut pada pola
desain umum untuk tugas yang hampir sama digunakan berulangkali untuk proyek
yang berhasil.
4. Extreme Programming - Extreme
programming didasarkan pada identifikasi kebutuhan kostumer dan berkonsentrasi
pada pengembangan dan pembuatan kebutuhan pelanggan (kostumer) dengan cepat.
Extreme programming merupakan pendekatan yang berbeda dengan skenario
tradisional yang memerlukan waktu baik pengembang maupun pelanggan untuk
mencoba (biasanya dengan tingkat kesuksesan yang terbatas) mendokumentasikan
secara detail software yang telah dikembangkan selama beberapa lama waktu yang
dihabiskan. pengembang yang berpengalaman mengerti bahwa implementasi yang
ter-stag secara positif berpengaruh pada proses desain. extreme programming
secara special efektif ketika kebutuhan kompleks dan tidak memerlukan hal
seperti sebelumnya.
Extreme programming biasanya
dideskripsikan sebagai sebuah phrase yang cukup berarti bagi penulis: test
driven programming, menulis kode test sebelum menulis kode aplikasi, kemudian
menulis software cukup untuk memenuhi unit test.
5. Aspect oriented Programming - Ide utama
dibalik aspect oriented programming (AOP) adalah pemisahan konsentrasi sistem
software pada bagian yang berbeda. pada prinsipnya, pilosofi ini mengijinkan
pengembangan sistem yang lebih modular, dengan modularitasnya terkontrol oleh
konsentrasi pengembangan yang berbeda. untuk programmer java, direkomendasikan
untuk mencari AspectJ project.