Minggu, 02 Oktober 2016

PENGANTAR TEKNOLOGI INFORMASI



PERKEMBANGAN KOMPUTER DAN PERKEMBANGAN SOFTWARE

Sebelum kita membahas mengenai perkembangan komputer dan perkembangan software, kita mengetahui terlebih dahulu apa arti komputer dan sofware itu sendiri. Tentunya kita sudah tidak asing lagi dengan komputer, karena dalam kehidupan sehari hari kita komputer sangat membantu menunjang akitivitas dalam segala hal. Contohnya seperti mengerjakan tugas sekolah, menyelesaikan tugas kantor, bermain game, mendengarkan musik, membuat animasi dan film, serta sistem komputer di kassa supermarket yang dapat membaca kode barang belanjaan, pusat telepon yang menangani jutaan panggilan dan komunikasi, jaringan komputer dan internet yang menghubungkan berbagai tempat di dunia semua menggunakan komputer. Maka sudah tidak asing untuk saat ini semua aktivitas manusia didunia pasti berhubungan dengan teknologi canggih yang satu ini yaitu komputer.

Dari perkembangan komputer dari tahun ke tahun yang semakin canggih maka kita perlu mengetahui sejarah ditemukannya komputer sendiri yaitu 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.

Sejarah Hardware Dalam Komputer

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 Progra

          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 penggunanaa listrik yang lebih hemat.
             Komputer generasi kedua mempunyai ciri - cir sebagai berikut :
      a) Komponen telah menggunakan transistor
      b) Ukuran fisiknya lebih cepat.
      c) Kecepatan prosesnya lebih cepat.
      d) Tidak cepat panas.
      e) Membutuhkan listrik lebih sedikit.
      f) Memori yang digunakan lebih besar.
      h) Telah menggunakan bahasa tingkat tinggi (high level lenguage).
      g) 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
       b) Hybrid Integrated Circuits atau Solid Logic Technology (SLT), yaitu transistor dan dioda diletakkan secara terpisah dalam satu tempat.
           c) Kecepatan prosesnya lebih cepat.
           d) Membutuhkan listrik lebih hemat.
           e) Memorinya yang digunakan lebih besar, dapat menyimpan sampai ratusan ribu karakter.
          f) Telah menggunakan penyimpanan luar yang bersifat random access, yaitu magnetik disk yang berkapasitas besar.  
           g) Dapat digunakan untuk multi processing dan multi programming.
        h) 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 Software Dalam Komputer

      Berdasarkan perkembangannya perangkat lunak sampai dengan sekarang dibagi menjadi beberapa era yaitu :
1.      Era Pemula (Pioneer)
Bentuk perangkat lunak pada awalnya adalah sambungan-sambungan kabel ke antar bagian dalam komputer, Pada era ini, perangkat lunak merupakan satu kesatuan dengan perangkat kerasnya.
2.      Era Stabil
Pada era stabil penggunaan komputer sudah banyak di gunakan, tidak hanya oleh kalangan peneliti dan akademi saja, tetapi juga oleh kalangan industri / perusahaan. 
- Perusahaan perangkat lunak bermunculan, dan sebuah perangkat lunak dapat menjalankan beberapa fungsi  perangkat lunak mulai bergeser menjadi sebuah produk
Baris-baris perintah perangkat lunak yang di jalankan oleh komputer bukan lagi satu-satu, tapi sudah seperti banyak proses yang di lakukan secara serempak (multi tasking). 
- Sebuah perangkat lunak mampu menyelesaikan banyak pengguna (multi user) secara cepat/langsung (real time)
- Pada era ini mulai di kenal sistem basis data, yang memisahkan antara program (pemroses) dengan data (yang di proses).
3.      Era Mikro
Sejalan dengan semakin luasnya PC dan jaringan komputer di era ini, perangkat lunak juga berkembang untuk memenuhi kebutuhan perorangan. Perangkat lunak dapat di bedakan menjadi perangkat lunak sistem yang bertugas menangani internal dan perangkat lunak aplikasi yang di gunakan secara langsung oleh penggunanya untuk keperluan tertentu. Automatisasi yang ada di dalam perangkat lunak mengarah ke suatu jenis kecerdasan buatan.
4.      Era Mikro
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.

Tahun Tahun Penemuan Software

1.      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.

2.      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.

3.      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 produktivitas pengembangan 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

            Di atas adalah sedikit pengetahuan mengenai perkembangan komputer dan software yang dari waktu ke waktu semakin praktis dan efisien dalam segi bentuk maupun fungsi untuk menunjang akitvitas kita sehari – hari. Semoga bisa berguna dan bermanfaat. Terima kasih.