Selasa, 07 Juni 2016

PERANGKAT LUNAK YANG AKAN DATANG

BAB I
PENDAHULUAN

A. Latar Belakang
Komputer merupakan sistem elektronik untuk manipulasi data yang berlangsung dengan sangat cepat dan akurat serta terorganisir untuk menerima input atau masukan,kemudian dilakukan pemprosesan hingga didapatkan output atau keluaran dibawah pengawasan suatu langkah-langkah atau instruksi program yang tersimpan di memori atau  storage program. Terdapat tiga komponen utama pada sistem komputer yaitu software, hardware, dan brainware. Berdasarkan perkembangannya,  software  telah mengalami evolusi yang cukup signifikan hingga masa sekarang. untuk memenuhi dan memanjakan user, para produsen software berlomba-lomba melakukan inovasi agar mampu merajai bisnis software komputer. Pada makalah ini kita akan mengupas sedikit banyak mengenai perangkat lunak yang akan tercipta dimasa yang akan datang.

B. Rumusan Masalah
Adapun rumusan  masalah  yang  akan  dibahas  pada  makalah  yaitu  mengenai perkembangan teknologi perangkat lunak/software komputer yang akan datang.

C. Tujuan
Adapun tujuan dari makalah ini adalah :
1.      Untuk mengetahui kebutuhan perangkat lunak dimasa yang akan datang.
2.      Untuk   mengetahui   perkembangan   kompleksitas sistem.
3.      Untuk mengetahui arsitektur software.


BAB II
PEMBAHASAN

Kebutuhan Masa Depan

          Dilihat oleh tren masa lalu, jelas bahwa hampir setiap organisasi industri akan membutuhkan lebih banyak orang dengan keterampilan pemrograman aplikasi dan bahwa kelompok-kelompok pemrograman yang paling akan sangat kekurangan. Karena kelompok perangkat lunak banyak yang sudah kekurangan, dan tingkat kelulusan universitas saat ini perangkat lunak profesional hanya sekitar 35.000 tahun, kita punya masalah [AS 99]. Secara umum, hanya ada dua cara untuk mengatasi masalah aplikasi-pemrograman.
  1. Entah bagaimana meningkatkan pasokan programmer baru.
  2. Mencari cara untuk menulis program lebih tanpa menggunakan programmer lebih.
       Karena memakan waktu lama untuk meningkatkan tingkat kelulusan perangkat lunak profesional, pendekatan utama untuk alternatif pertama harus melakukan lebih dari apa yang kita lakukan hari ini-yaitu, untuk bergerak lepas pantai software lebih banyak dan untuk membawa imigran lebih banyak perangkat lunak-terampil ke Amerika Serikat
          Sementara banyak organisasi yang membangun perangkat lunak laboratorium di negara lain, khususnya India, ini merupakan solusi yang terbatas. Kebutuhan utama adalah untuk perangkat lunak profesional terampil yang memahami kebutuhan bisnis dan dapat menerjemahkan kebutuhan ini ke dalam aplikasi bekerja. Tidak ada pertanyaan bahwa pekerjaan coding dan pengujian dapat dikirim lepas pantai, tapi itu akan memerlukan desain yang baik atau, setidaknya, persyaratan yang jelas dan tepat. Sejak memproduksi persyaratan dan desain adalah sebagian dari pekerjaan perangkat lunak, akan lepas pantai hanya dapat menjadi bagian kecil dari solusi.
          Memperoleh perangkat lunak-lebih terampil imigran adalah alternatif yang menarik, terutama karena lulusan India saja sekitar 100.000 berbahasa Inggris perangkat lunak profesional setahun. Namun, AS telah pembatasan visa ketat, dan kelompok-kelompok lain juga memiliki klaim pada slot yang tersedia. Juga, karena permintaan untuk kemampuan software meningkat dengan cepat di India, dan karena banyak profesional India sekarang dapat menemukan peluang yang menarik di rumah, jumlah imigran India yang tersedia kemungkinan akan terbatas di masa depan.

Para Analogi Automobile Industry

          Untuk menguji alternatif penulisan program yang lebih tanpa menambah programmer lebih, mempertimbangkan industri otomotif. Kembali sebelum Henry Ford, hanya orang kaya mampu mobil. Kemudian Henry Ford mobil terjangkau untuk orang biasa. Setelah produsen mulai melayani kebutuhan massa, industri otomotif berubah dengan cepat.
          Banyak inovasi diperlukan sebelum orang bisa merasakan mengemudi nyaman tanpa sopir. Mereka membutuhkan badan mobil tertutup, starter otomatis, pemanas, cengkeraman, transmisi, dan sejumlah fitur progresif lebih otomatis dan nyaman lainnya. Kombinasi dari inovasi yang dibuat operasi sebuah mobil sederhana dan mudah bagi hampir semua orang.
          Dengan bantuan dari inovasi ini, orang bisa belajar untuk drive tanpa sopir. Ketika semua ini terjadi, bisnis sopir masuk ke berputar-putar. Segera, sebagai kenyamanan, kemudahan, dan kehandalan mobil meningkat, mengemudi mobil bukan lagi khusus, melainkan menjadi keterampilan umum yang diperlukan hanya sekitar semua orang. Saat ini, kebanyakan orang belajar mengendarai mobil sebelum mereka keluar dari sekolah tinggi. Meskipun masih ada pengemudi profesional, sebagian besar mengemudi sekarang dilakukan oleh masyarakat umum.

Bidang Komputer Hari

          Hari ini, bidang komputer jauh seperti hari-hari awal dari industri mobil. Banyak profesional telah belajar untuk menggunakan sistem komputasi, tetapi sedikit yang bersedia untuk bergantung pada mereka untuk bekerja kritis, setidaknya tidak tanpa bantuan ahli dan dukungan. Di bidang komputer, sopir yang setara dengan kami dalam kedok para ahli yang mengembangkan aplikasi, menginstal dan sistem operasi penjahit, dan membantu kita pulih dari sistem crash sering dan kegagalan. Bahkan di Internet, sistem kita saat ini sering menunjukkan perilaku yang aneh dan sekarang kami dengan pesan samar. Sementara sistem ini jauh lebih mudah digunakan daripada sebelumnya, mereka belum dapat digunakan oleh masyarakat umum.
          Untuk sistem komputasi untuk digunakan secara luas, kita perlu sistem yang bekerja secara konsisten dan bebas masalah. Kami juga membutuhkan sistem pendukung yang melayani fungsi yang sama sebagai starter mobil dan transmisi otomatis. Kemudian profesional di bidang yang paling akan dapat mengotomatisasi aplikasi mereka sendiri tanpa perlu programmer terampil untuk menangani rincian sistem misterius.
           Lain prasyarat untuk meluasnya penggunaan sistem komputasi adalah bahwa para profesional di bidang yang paling mampu menghasilkan berkualitas tinggi program aplikasi dengan bantuan profesional sedikit atau tidak ada. Terobosan nyata akan datang ketika lebih mudah untuk belajar untuk menulis perangkat lunak yang baik dari itu adalah untuk belajar tentang aplikasi bisnis atau ilmiah yang paling. Kemudian, bukan membutuhkan bahwa orang-orang yang terampil perangkat lunak belajar tentang setiap bidang aplikasi, maka akan lebih ekonomis dan efisien untuk memiliki ahli aplikasi belajar untuk mengembangkan perangkat lunak mereka sendiri. Pada saat itu, rekayasa perangkat lunak akan menjadi keterampilan umum jauh seperti mengemudi, matematika, atau menulis, dan setiap profesional akan dapat menggunakan sistem komputasi untuk memenuhi sebagian besar kebutuhan aplikasi nya atau nya.

Tumbuh Sistem Ukuran dan Kompleksitas

          Sementara perubahan tersebut akan menjadi bantuan besar, ia tidak akan membahas semua aspek pemrograman aplikasi. Untuk melihat mengapa, mempertimbangkan kecenderungan dalam ukuran dan kompleksitas program aplikasi. Jika sejarah adalah panduan, program aplikasi masa depan akan jauh lebih besar dan lebih kompleks daripada sekarang. Ini berarti bahwa pengembangan sistem seperti ini akan berubah dalam beberapa cara penting.
         Sebagaimana saya tulis dalam kolom sebelumnya, perubahan pertama dan mungkin paling penting adalah dalam kualitas. Mereka yang membutuhkan software hanya akan mampu menggunakan program untuk melakukan bisnis mereka kecuali mereka memiliki kualitas yang jauh lebih tinggi daripada sekarang. Kecenderungan kedua adalah sama penting: pendekatan pondok-industri saat ini untuk mengembangkan program aplikasi harus memberi jalan untuk sebuah disiplin lebih profesional dan dikelola dengan baik. Ini bukan hanya karena meningkatnya ukuran program dan spesifikasi lebih menuntut kualitas mereka, tetapi juga karena bisnis memproduksi program-program tersebut akan tumbuh melampaui kemampuan kebanyakan orang untuk menguasai dengan cepat.
          Dengan kata lain, hari sebagian besar telah berlalu ketika kami bisa mempekerjakan orang yang cukup akrab dengan bahasa pemrograman pilihan dan mengharapkan dia untuk cepat menjadi produktif pada program aplikasi berkembang. Sebagai program aplikasi menjadi lebih besar dan lebih canggih, pengetahuan dan pengalaman aplikasi yang diperlukan akan meningkat juga. Segera, biaya dan waktu yang diperlukan untuk membangun pengetahuan aplikasi akan menjadi penghalang. Oleh karena itu, sejumlah metode baru harus dikembangkan untuk membuat program aplikasi yang lebih ekonomis dan memakan waktu jauh lebih sedikit daripada sekarang ini.

Reuse

          Argumen saya ke titik ini yang bersangkutan mendapatkan lebih banyak orang untuk menulis program. Namun, ada alternatif lain: mencari cara untuk menghasilkan aplikasi lebih banyak dengan lebih sedikit orang. Salah satu solusi yang diusulkan untuk tantangan ini adalah melalui penggunaan kembali. Sementara ini tampaknya seperti sebuah kemungkinan yang menarik, sejarah belum menggembirakan. Bahkan, sejarah menunjukkan bahwa teknologi akan kembali sebagian besar terbatas untuk membangun perpustakaan semakin besar bahasa dan fungsi sistem. Sayangnya, kompleksitas bahasa ditambahkan akan menyebabkan masalah lain. Ini bukan karena kembali tidak menarik, melainkan hanya pada terlalu rendah tingkat aplikasi untuk mengatasi kebutuhan sebagian besar pengguna.
       Komunitas perangkat lunak telah menambahkan kemampuan fungsional dengan bahasa pemrograman selama 47 tahun sejak saya menulis program pertama saya. Pendekatan ini tidak memecahkan masalah pemrograman dari masa lalu, juga tidak mungkin untuk mengatasi orang-orang dari masa depan. Alasan utama adalah bahwa dengan menambahkan lebih banyak fungsi mikroskopis untuk bahasa kita, kita hanya menyatakan kembali masalah pengembangan aplikasi dalam hal sedikit lebih kaya.
        Misalnya, ketika saya menulis program pertama saya kita harus mengontrol memulai dan menghentikan I / O device dan transfer masing-masing karakter. Sekarang fungsi tersebut ditangani secara otomatis untuk kita, namun kita dihadapkan bukan dengan bahasa canggih banyak lagi. Alih-alih bahasa yang sederhana Anda bisa meringkas pada selembar kertas, sekarang kita perlu buku teks keseluruhan.
          Memang, kekayaan bahasa meningkat mengurangi pengetahuan sistem rinci diperlukan untuk mengelola fungsi komputer, tetapi masih meninggalkan kita dengan masalah desain secara keseluruhan, serta masalah menentukan apa desain yang seharusnya dilakukan bagi pengguna. Kemudian, para programmer aplikasi memiliki tantangan terakhir untuk menerjemahkan desain ke dalam fungsi dan program handal.
          Hal ini menyebabkan masalah yang akan memaksa kita keluar dari pendekatan pondok-industri untuk pemrograman. Itu adalah ketidakmungkinan sederhana dengan cepat menjadi fasih dalam semua bahasa dan fungsi yang dibutuhkan untuk menghasilkan sistem aplikasi yang kompleks di masa depan. Sementara kembali dalam istilah tradisional dapat bermanfaat bagi penduduk pemrograman profesional, secara langsung bertentangan dengan kebutuhan untuk membuat teknologi kami lebih mudah diakses oleh orang yang tidak penuh waktu profesional pemrograman.

Dikemas Aplikasi

           Untuk menangani volume kebutuhan banyak pengguna, perusahaan mulai memasarkan aplikasi dikemas seperti yang ditawarkan oleh SAP dan Oracle. Artinya, mereka menghasilkan sistem aplikasi dasarnya dikemas yang dapat dikonfigurasi dalam cara yang ditentukan. Daripada kustom-merancang setiap aplikasi, industri ini akan semakin mengembangkan keluarga sistem aplikasi tailorable. Para pengguna kemudian akan menemukan sistem yang tersedia yang paling dekat untuk memenuhi kebutuhan mereka dan menggunakan kemampuan kustomisasi untuk menyesuaikan sistem untuk kebutuhan bisnis mereka.
        Untuk membuat sistem ini mudah tailorable oleh pelanggan mereka, perusahaan akan merancang sistem mereka dengan kemampuan terbatas, tetapi generik,. Kemudian, di samping untuk menyesuaikan sistem, pengguna juga harus menyesuaikan prosedur bisnis mereka agar sesuai dengan fasilitas yang tersedia dari sistem. Sebagai pengalaman dari SAP dan lain-lain telah menunjukkan, pendekatan ini tidak bebas masalah, tetapi dapat memberikan pengguna dengan sistem aplikasi yang besar dan canggih dengan biaya yang jauh lebih rendah daripada pengembangan aplikasi kustom-penuh.
          Dilihat oleh pertumbuhan SAP, Oracle, dan lain-lain, ini telah menjadi strategi menarik. Daripada mengembangkan aplikasi untuk memenuhi berbagai kebutuhan pengguna terbatas mungkin, pengguna akan semakin beradaptasi operasi bisnis mereka agar sesuai dengan fungsi sistem aplikasi yang tersedia. Sementara ini merupakan bentuk kembali, itu adalah pada tingkat jauh lebih tinggi daripada pendekatan umum yang diusulkan, dan umumnya memerlukan sebuah keluarga serius architected produk aplikasi atau lini produk. Sama seperti dengan industri transportasi, perumahan, dan pakaian, misalnya, begitu orang melihat biaya besar produk disesuaikan, mereka biasanya puas dengan apa yang dapat mereka temukan di rak.

Kategori Aplikasi

          Pengembangan aplikasi bekerja di masa depan mungkin akan melibatkan tiga kategori pekerjaan:
  1. Mengembangkan aplikasi yang dikemas pengguna dapat menyesuaikan dengan kebutuhan mereka
  2. Menyesuaikan sistem bisnis untuk menggunakan sistem aplikasi dikemas
  3. Mengembangkan dan mendukung aplikasi unik yang tidak dapat dibuat dengan perangkat lunak dikemas
          Para programer yang diperlukan untuk kategori pertama akan menjadi profesional seperti yang dibutuhkan untuk mengembangkan program-program sistem, tapi mereka umumnya akan memiliki pengetahuan aplikasi yang cukup. Saya akan menulis lebih banyak tentang kategori ini dalam kolom kemudian.
          Untuk kategori kedua, kita mungkin akan melihat pertumbuhan yang substansial dalam volume kustomisasi aplikasi. Orang yang melakukan pekerjaan ini akan lebih seperti konsultan bisnis dari programmer, dan banyak bahkan tidak akan tahu bagaimana merancang dan mengembangkan program. Orang-orang ini akan dididik secara menyeluruh dalam paket yang mereka menyesuaikan dan membantu untuk menginstal.
          Alasan untuk kategori ketiga adalah bahwa, meskipun strategi aplikasi dikemas mungkin akan menangani sebagian roti-dan-mentega aplikasi, itu tidak akan menangani aplikasi tersebut diperlukan untuk mendukung kegiatan bisnis baru dan inovatif. Karena aplikasi ini tidak akan pernah digunakan sebelumnya, tak seorang pun akan tahu bagaimana untuk menghasilkan solusi dikemas. Akibatnya, akan ada volume aplikasi yang tidak dapat diselesaikan oleh solusi dikemas. Oleh karena itu, bahkan dengan berbagai aplikasi yang tersedia dikemas, kebutuhan untuk pengembangan aplikasi disesuaikan tidak akan hilang.
 SOFTWARE ARSITEKTUR
      Berbicara mengenai software 3d tidak akan pernah ada habisnya, akan selalu lahir generasi software baru yang lebih sesuai dengan zaman tertentu, ketika autodesk auto cad telah memimpin pasar gambar 2d dan 3d, muncullah discreet dengan produk discreet 3ds max, dimana awalnya para pengguna auto cad 3d masih kurang nyaman mengugunakannya dengan berbagai alasan salah satu di antaranya misalnya interface dan tools yang di nilai terlalu ribet. Beberapa tahun lalu auto desk kemudian membeli software ini dari discreet dan menjadi 3ds max yang kita kenal sekarang yaitu auto desk 3ds max.



Kemudian lahir generasi google sketchup, meskipun awalnya software ini di tujukan untuk software suport untuk google map, namun kemudahan dalam penggunaannya menarik pengguna software 3d yang begitu besar. Belajar dari bagaimana google sketchup bisa diterima oleh para pengguna 3d adalah hal yang paling mudah untuk menggambarkan software apa yang memiliki potensi masa depan.
Perlu di pahami bahwa 3d dalam konteks software 3d memiliki paling tidak 2 makna yaitu modeling software dan  rendering software. Modeling software seperti 3ds max dan sketchup membutuhkan  plugin tambahan untuk peoses renderingnya yang paling populer adalah misalnya vray rendering, dan atau meng import modeling tersebut ke software rendering. Untuk modeling software saya berpikir bahwa google sketchup masih akan terus memimpin maklum pesaingnya tidak ada .
Pembahasan software 3d kita kali ini adalah 3d dalam konteks software rendering ( bukan plugin rendering yah ), apa yang menjadi alat ukur kami menilai bahwa software ini akan menjadi software masa depan??
Yang pertama. 
Kemampuan menjawab kecenderungan users atau pengguna yang bersifat templates atau menyukai yang mudah mudah saja
Yang kedua.
Kemampuan menjawab tuntutan pasar 3d yang mengiginkan kualitas terbaik namun dengan waktu yang singkat.
Yang ketiga.
Dari sisi bisnis 3d dua kemampuan di atas dapat mendudukkan dua permasalahan yang akan di hadapi dalam masa depan bisnis ini yaitu biaya produksi yang lebih murah karena kemudahan yang di tawarkan oleh software dan tuntutan pasar yang cenderung menyenagi biaya yang murah dan cepat.
Yang keempat. 
Software-software ini secara optimis telah terus melakukan perubahan dan hasilnnya mengagumkan, di luar ekspektasi. 
Yang kelima.
Harga software ini bersaing di pasaran ( software aslinya yah bukan bajakan )
Yang keenam. 
Tidak membutuhkan kualitas komputer yang begitu hebat untuk penggunaannya, di sisi lain super komputer seperti BOXX harganya semakin terjangkau
            Di urutan pertama dari software 3d yang akan menjadi masa depan adalah LUMION 
http://www.lingkarwarna.com/2015/11/lumion-twinmotion-dan-lumenrt.html

Kustom Aplikasi Pemrograman

          Pekerjaan aplikasi kustom harus ditangani oleh orang yang tahu bagaimana menulis program dan yang juga memahami aplikasi khusus. Orang-orang ini harus menjadi ahli pada berbagai macam spesialisasi, dan harus mampu menulis berkualitas tinggi program. Bagi orang-orang, kita harus mengembangkan metode yang sesuai dan pelatihan-untuk membantu mereka mengembangkan program kualitas pada mereka sendiri. Meskipun mereka tidak akan bekerja penuh waktu sebagai programmer profesional, saya percaya bahwa programmer kategori ini pada akhirnya akan terdiri dari sebagian besar program orang menulis. Karena mereka tidak akan menghabiskan semua-atau bahkan sebagian besar-dari waktu mereka menulis program, kita harus menyederhanakan bahasa kita dan mengembangkan bahasa baru yang dirancang untuk penggunaan kasual. Kita harus mengembangkan alat dan sistem pendukung yang akan membantu orang-orang untuk menghasilkan program berkualitas tinggi dengan harga yang wajar dan biaya. Kita juga harus menyesuaikan sistem pendukung sehingga aplikasi menulis untuk berjalan di atas sistem program yang dirancang dengan baik tidak akan memerlukan dukungan teknis yang ekstensif dan konsultasi hotline.
BAB III
PENUTUP
     Singkatnya, apa yang saya usulkan adalah bahwa, daripada harus seorang profesional pemrograman yang lebih terlatih, kita akan memecahkan kebutuhan program  dengan mengajar semua orang untuk menjadi programmer. Meskipun orang-orang tidak akan menjadi programmer profesional, mereka akan menjadi lebih penting bagi komunitas perangkat lunak karena mereka akan menjadi user. Mereka akan beroperasi pada batas-batas sistem perangkat lunak profesional yang akan diberikan, dan mereka akan menjadi yang pertama untuk mengidentifikasi peluang-peluang baru yang penting. Oleh karena itu, mereka mungkin akan menjadi sumber dari banyak inovasi masa depan di bidang rekayasa perangkat lunak.
DAFTAR PUSTAKA

Senin, 06 Juni 2016

EVOLUSI PERANGKAT LUNAK

BAB I
PENDAHULUAN

A. Latar Belakang
Komputer merupakan sistem elektronik untuk manipulasi data yang berlangsung dengan sangat cepat dan akurat serta terorganisir untuk menerima input atau masukan,kemudian dilakukan pemprosesan hingga didapatkan output atau keluaran dibawah pengawasan suatu langkah-langkah atau instruksi program yang tersimpan di memori atau  storage program. Terdapat tiga komponen utama pada sistem komputer yaitu software, hardware, dan brainware.  Berdasarkan perkembangannya,  software  telah mengalami evolusi yang cukup signifikan yang terbagi atas empat era evolusi yaitu era pioner, era stabil, era mikro, dan era modern. Selain mengalalami empat tahapan evolusi, software juga terbagi atas dua yaitu software sistem dan software aplikasi. Pada makalah ini kita akan mengupas sedikit banyak mengenai evolusi perangkat lunak dari masa ke masa.

B. Rumusan Masalah
Adapun rumusan  masalah  yang  akan  dibahas  pada  makalah  yaitu  mengenai perkembangan teknologi perangkat lunak/software komputer.

C. Tujuan
Adapun tujuan dari makalah ini adalah :
1.      Untuk mengetahui apa itu perangkat lunak.
2.      Untuk   mengetahui   perkembangan   teknologi   perangkat   lunak atau software.
3.      Untuk mengetahui jenis perangkat lunak/software computer.


BAB II
PEMBAHASAN

A.    Mengenal Perangkat Lunak atau Software Komputer
Dalam dunia teknologi informasi, kadang kita mendengar istilah tentang software atau perangkat lunak komputer. Dikatakan bahwa, keberadaaan hardware atau perangkat keras komputer tanpa ditunjang oleh perangkat lunak maka komputer tidak dapat digunakan, begitupun sebaliknya. Nama lain dari perangkat lunak komputer adalah software. Karena disebut juga sebagai perangkat lunak, maka sifatnya pun berbeda dengan hardware atau perangkat keras, jika perangkat keras adalah komponen yang nyata yang dapat diliat dan disentuh secara langsung oleh manusia, maka software atau perangkat lunak tidak dapat disentuh dan dilihat secara fisik. Software memang tidak tampak secara fisik dan tidak berwujud benda namun bisa dioperasikan.

Pengertian software komputer adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi yang akan menjalankan suatu perintah. Melalui software atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah.

Terdapat empat jenis software berdasarkan distribusinya yaitu software berbayar, freeware, free software, shareware. Software berbayar merupakan perangkat lunak yang didistribusikan untuk tujuan komersil, setiap pengguna yang ingin menggunakan atau mendapatkan software tersebut dengan cara membeli atau membayar pada pihak yang mendistribusikannya. Freeware atau perangkat lunak gratis adalah perangkat lunak komputer berhak cipta yang gratis digunakan tanpa batasan waktu, berbeda dari shareware yang mewajibkan penggunanya membayar (misalnya setelah jangka waktu percobaan tertentu atau untuk memperoleh fungsi tambahan).  Free Software lebih mengarah kepada bebas penggunaan tetapi tidak harus gratis. Shareware juga bebas tetapi   lebih   dibatasi   untuk   waktu   tertentu. Shareware   adalah   program terbatas didistribusikan baik sebagai demonstrasi atau versi evaluasi dengan fitur atau fungsi yang terbatas atau dengan menggunakan batas waktu yang ditetapkan (misalnya 30 hari).

B. Perkembangan Teknologi Perangkat Lunak Komputer
1. Perkembangan Pembuatan Perangkat Lunak Komputer
Dari   perkembangan   perangkat   lunak,   kita   bisa   membayangkan   bagaimana perkembangan interaksi manusia dengan perangkat lunak. Bentuk paling primitif dari perangkat  lunak, menggunakan  aljabar  Boolean,  yang  di  representasikan  sebagai binary digit (bit), yaitu 1 (benar / on) atau 0 (salah / off), cara ini sudah pasti sangat menyulitkan, sehingga orang mulai mengelompokkan bit tersebut menjadi nible (4 bit), byte (8 bit), word (2 byte), double word (32 bit). 

Kelompok-kelompok   bit   ini   di   susun   ke   dalam   struktur   instruksi   seperti penyimpanan, transfer, operasi aritmatika, operasi logika, dan bentuk bit ini di ubah menjadi kode-kode yang di kenal sebagai assembler. Kode-kode mesin sendiri masih cukup menyulitkan karena tuntutan untuk dapat menghapal kode tersebut dan format (aturan) penulisannya yang cukup membingungkan, dari masalah ini kemudian lahir bahasa pemrograman tingkat tinggi yang seperti bahasa manusia (bahasa Inggris). Saat ini pembuatan perangkat lunak sudah menjadi suatu proses produksi yang sangat kompleks, dengan urutan proses yang panjang dengan melibatkan puluhan bahkan ratusan orang dalam pembuatannya.2. Evolusi Teknologi Perangkat Lunak Komputer
a. Era Pioner
Bentuk perangkat lunak pada awalnya adalah sambungan-sambungan kabel ke antar bagian dalam komputer, gambar berikut memperlihatkan orang yang sedang menggunakan komputer.
Gambar 1.1 Menggunakan Komputer ENIAC
Cara lain dalam mengakses komputer adalah menggunakan punched card yaitu kartu yang di lubangi. Penggunaan komputer saat itu masih dilakukan secara langsung, sebuah program untuk sebuah mesin untuk tujuan tertentu. Pada era ini,perangkat   lunak   merupakan   satu   kesatuan   dengan   perangkat   kerasnya. Penggunaan   komputer   dilakukan   secara   langsung   dan   hasil   yang   selesai dikerjakan komputer berupa print out. Proses yang di lakukan di dalam computer berupa baris instruksi yang secara berurutan di proses antara lain :
1) Batch Processing
Batch   processing adalah   suatu   model   pengolahan   data,   dengan menghimpun data terlebih dahulu, dan diatur pengelompokkan datanya dalam kelompok-kelompok yang disebut batch. Tiap batch ditandai dengan identitas tertentu,   serta   informasi   mengenai   data-data   yang   terdapat   dalam   batch tersebut. Setelah data-data tersebut terkumpul dalam jumlah tertentu, data-data tersebut akan langsung diproses.


Gambar 1.2 Batch Processing
Contoh dari penggunaan batch processing  adalah e-mail dan transaksi batch processing.   Dalam suatu   sistem batch   processing,   transaksi   secara individual dientri melalui peralatan terminal, dilakukan validasi tertentu, dan ditambahkan  ke   transaction   file   yang   berisi   transaksi   lain,  dan   kemudian dientri ke dalam sistem secara periodik. Di waktu kemudian, selama siklus pengolahan   berikutnya,   transaction   file   dapat   divalidasi   lebih   lanjut   dan kemudian digunakan untuk meng-up date master file yang berkaitan.
2 ) Distribusi Terbatas
3 ) Pembuatan Khusus

b. Era Stabil
Komputer sudah banyak digunakan dan terjangkau oleh kalangan industri dan perusahaan yang membawa pengaruh terhadap perkembangan perangkat lunak. Kemampuan multitasking (banyak program) dan multi user (banyak pengguna) sudah dikenal juga sistem basis data. Proses yang dilakukan oleh software pada era ini, antara lain :
1) Multi-Tasking dan Multi-User
Multitasking adalah istilah teknologi informasi dalam bahasa inggris yang mengacu kepada sebuah metode dimana banyak pekerjaan atau dikenal juga sebagai proses diolah dengan menggunakan sumber daya CPU yang sama. Contoh sistem operasi jenis ini antara lain adalah linux. Linux adalah system operasi yang multitasking danmultiuser seperti kebanyakan SO yang ada pada saat ini. Multitasking pada linux artinya linux bisa atau mampu menjalankan beberapa proses dalam waktu yang bersamaan. Sistem   Multi-User   adalah   suatu   sistem   dimana   lebih   dari   satu   user menggunakan secara bersama satu atau lebih perangkat keras, piranti lunak dan data/ informasi , orang dan prosedur melalui masing-masing computer atau workstation.
2) Real Time System (Bekerja dengan cepat)
Real Time System Disebut juga dengan Sistem waktu nyata. Sistem yang harus   menghasilkan   responyang   tepat   dalam   batas   waktu   yang   telah ditentukan. Jika respon komputer melewati batas waktu tersebut, maka terjadi degradasi performansi atau kegagalan sistem.Sebuah Real time system adalah sistem yang kebenarannya secara logis didasarkan pada kebenaran hasil-hasil keluaran sistem dan ketepatan waktu hasil-hasil tersebutdikeluarkan. Aplikasi penggunaan   sistem   seperti   ini   adalah   untuk   memantau   danmengontrol peralatan   seperti motor,   assembly   line,   teleskop,   atau   instrument lainnya. Peralatan telekomunikasi   dan jaringan   komputer   biasanya   juga membutuhkan pengendalian secara Real time. Contoh adalah pemesanan tiket pesawat on line.
3) Progam Database
Database atau basis   data adalah   kumpulan   data   yang   disimpan   secara sistematis   di   dalam   komputer   yang   dapat   diolah   atau   dimanipulasi menggunakan   perangkat   lunak   (program   aplikasi)   untuk   menghasilkan informasi.

c. Era Mikro
Perangkat  lunak  pada era  ini   sudah berkembang  untuk   memenuhi kebutuhan individu. Harga perangkat lunak juga sudah terjangkau oleh individu. Perangkat lunak dapat dibedakan menjadi perangkat lunak sistem yang menangani perangkat internal   dan   perangkat   lunak   aplikasi   yang   digunakan   secara   langsung   oleh penggunannya untuk keperluan tertentu. Otomatisasi yang ada di dalam perangkat lunak mengarah ke suatu jenis kecerdasan buatan. Oleh sebab itu, perangkat lunak pada era ini mengalami perkembangan proses berikut :
1) Sistem mulai tersebar ke beberapa kalangan masyarakat.
2) Software mengalami kecerdasan yang mempermudah penggunaannya.
3) Harga setiap software mulai terjangkau oleh individu.

d. Era Modern
Saat ini perangkat lunak sudah terdapat di mana-mana, tidak hanya pada sebuah superkomputer dengan 25 prosesornya, sebuah komputer genggampun telah di lengkapi dengan perangkat lunak yang dapat di sinkronkan dengan PC. Tidak hanya komputer, bahkan peralatan seperti telepon, TV, hingga ke mesin cuci, AC dan   microwave,   telah   ditanamkan   perangkat lunak   untuk   mengatur   operasi peralatan itu. Hebatnya lagi adalah setiap peralatan itu akan mengarah pada suatu saat kelak akan dapat saling terhubung. Pembuatan sebuah perangkat lunak bukan lagi pekerjaan segelentir orang,  tetapi telah menjadi pekerjaan banyak  orang, dengan beberapa tahapan proses yang melibatkan berbagai disiplin ilmu dalam perancangannya. Tingkat kecerdasan yang di tunjukkan oleh perangkat lunak pun semakin meningkat, selain permasalahan teknis, perangkat lunak sekarang mulai bisa   mengenal   suara   dan   gambar.  Kecerdasan  perangkat lunak   pada   era   ini membuat proses perkembangannya semakin luas menjadi :
1) Sistem Desktop
2) Teknologi Objek
3) Sistem Pakar
4) Pemrosesan Paralel
5) Jaringan Komputer

C. Klasifikasi Macam-Macam Perangkat Lunak
·         Perangkat lunak aplikasi (application software) Adalah suatu subkelas perangkat (software) komputer yang memanfaatkan kemampuan komputer langsung, untuk melakukan suatu tugas yang diinginkan si pengguna. Program ini dibuat programmer dan sudah disesuaikan dengan kebutuhan pemakainya.
·         Sistem operasi (operating system) Sistem operasi adalah program yang berfungsi untuk mengendalikan sistem kerja yang mendasar, sehingga mengatur kerja media input, output, tabel pengkodean, memori, penjadwalan prosesor, dan lain-lain sebagainya. Sistem operasi ini berfungsi sebagai penghubung antara manusia dengan perangkat keras dan perangkat lunak yang akan digunakan.

Adapun fungsi utama sistem operasi adalah :
1. Menyimpan program dan aksesnya.
2. Membagi tugas di dalam CPU.
3. Mengalokasikan tugas-tugas penting.
4. Merekam sumber-sumber data.
5. Mengatur memori sistem termasuk penyimpanan, menghapus dan mendapatkan data.
6. Memeriksa kesalahan sistem- Multitugas pada OS/2″, Windows ’95″, Windows ’98″, Windows NT”, /2000/XP.
7. Memelihara keamanan sistem, khusus pada jaringan yang membutuhkan kata sandi (password) dan penggunaan ID.

·         Perangkat lunak gratis (freeware) Freeware atau perangkat lunak gratis adalah perangkat lunak (software) komputer yang memiliki cipta yang gratis digunakan tanpa batasan waktu, sehingga dapat dibedakan dari shareware yang mewajibkan penggunanya membayar (misalnya setelah jangka waktu percobaan tertentu atau untuk memperoleh fungsi tambahan).

·         Perangkat lunak uji coba (shareware / trialware) Shareware adalah program terbatas, program didistribusikan baik sebagai demonstrasi atau versi evaluasi dengan fitur atau fungsi yang terbatas atau dengan menggunakan batas waktu yang telah ditetapkan (misalnya 30 hari) yang biasa disebut dengan masa trial. Dengan demikian, memberikan pengguna kesempatan untuk menguji produk sebelum membeli dan kemudian membeli versi lengkap dari suatu program.

·         Perangkat lunak perusak (malware) Adalah sebuah perangkat lunak yang bekerja untuk merusak tata kerja dari sistem komputer. Malware ini bekerja dengan mengganggu kinerja dari perangkat lunak yang ada dalam sistem komputer.Perangkat lunak perusak biasanya sangat mudah tersebar dari satu komputer ke komputer lain, apalagi yang terhubung dalam suatu jaringan (network), atau bisa juga lewat hardware portable, seperti USB flashdisk, card reader, atau floppy disk (disket).

·         Bahasa Pemrograman (programming language) Adalah program yang digunakan untuk menerjemahkan instruksi-instruksi yang ditulis dalam bahasa pemrograman ke bahasa mesin dengan aturan atau prosedur tertentu, agar diterima oleh komputer.g. Program Bantu (utility) Program bantu 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.

BAB III
PENUTUP

A. Kesimpulan
Perangkat lunak komputer adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program   atau instruksi   yang   akan   menjalankan   suatu   perintah.   Melalui   software atau perangkat   lunak inilah   suatu   komputer   dapat   menjalankan   suatu   perintah. Tahapan perkembangan perangkat lunak ada empat yatiu era pioner, era stabil, era mikro dan era modern. Secara umum, perangkat lunak dibedakan atas dua yaitu perangkat lunak sistem dan perangkat lunak aplikasi.
B. Saran
Makalah ini membahas mengenai perkembangan teknologi pada perangkat lunak, dan penulis menyadari masih banyak kekurangan dari makalah ini. Penulis sangat mengharapkan masukan dari pembaca untuk menyempurnakan isi makalah ini.

DAFTAR PUSTAKA 
http://vivi_afifah.staff.gunadarma.ac.id/Downloads/files/4483/ivansudirman
softwarekomputer.pdf