Jumat, 13 November 2009

MAKALAH SOFTWARE

MAKALAH





SOFTWARE


DISUSUN OLEH

RINA ARIANI

0901092043

Manajemen Informatika 1 A














KATA PENGANTAR

Bismillahhirrohmanirrohim.

Dengan memanjatkan do'a dan puji syukur kehadirat Allah SWT serta sholawat serta salam tercurahkan ke junjungan kita Nabi Muhammad SAW, sehingga penulis dapat menyelesaikan tugas Pengantar Teknologi Informasi dengan judul Perkembangan Komputer.

Adapun penulisan makalah ini dapat terselesaikan berkat bantuan dari segala pihak yang membantu terselesaikannya makalah ini.

Maka dari itu penulis mengucapkan terima kasih kepada :

1. Bapak Direktur Utama Politeknik Universitas Andalas.
2. Ketua Jurusan Teknologi yang telah memberikan tugas untuk pembuatan makalah ini.
3. Rekan se-angkatan yang membantu dan mendorong serta memberikan informasi yang sangat diperlukan dalam penyusunan makalah ini sehingga dapat terselesaikan.
4. Semua pihak yang telah ikut berpartisipasi, serta telah memberikan semangat dalam membantu menyelesaikan makalah ini.

Penulis menyadari bahwa makalah ini masih banyak kesalahan dan kekurangan, maka dari itu penulis mengharapkan sumbangan pikiran, pendapat serta saran – saran yang berguna demi penyempurnaan makalah ini. Semoga makalah ini dapat berguna dan bermanfaat bagi pembaca.

Padang, 14 NOVEMBER 2009




BAB I

PENDAHULUAN

I. Latar Belakang

Dewasa ini perkembangan dan kemajuaan teknologi informasi dan komunikasi telah berkembang dengan sangat pesat. Berbagai kemudahan memperoleh informasi dari berbagai penjuru dunia dapat kita nikmati dalam hitungan detik. Pada saat " Zaman Batu " teknologi informasi dan komunikasi dianggap sebagai sesuatu yang tidak mungkin, kini telah menjadi kenyataan. Dengan teknologi yang luas ini kita harus dapat memanfaatkannya.

Diantara teknologi informasi yang hampir disetiap tempat kita temukan adalah computer. Sekarang computer sangat berkembang pesat hampir setiap tahun computer selalu mengalami perkembangan.Orang bisa menggunakan computer dimana saja dirumah, dikafe, disekolah, dan ditempat lainnya. Sedangkan model dan design dari computer itu sendiri juga mengalami perkembangan. Dulu apabila orang ingin menggunakan computer maka hanya bias dikantor atau dirumah, kalau sekarang mereka bias menggunakan computer tersebut dimana saja yang mereka inginkan.

Software yang kita gunakan sekarang ini tidak serta merta muncul begitu saja melainkan melalui proses yang panjang dalam evolusinya. Hal ihwal munculnya komputer mungkin dapat dilihat dalam kilas balik sejarah sejak digunakannya Abacus – ditemukan di Babilonia (Irak) sekitar 5000 tahun yang lalu – sebagai alat perhitungan manual yang pertama, baik di lingkup sekolah maupun kalangan pedagang, saat itu. Pada periode selanjutnya telah banyak ditemukan alat-alat hitung mekanikal sejenis yaitu Pascaline yang ditemukan oleh Blaine Pascal pada tahun 1642, Arithometer oleh Charles Xavier Thomas de Colmar pada tahun 1820, Babbage’s Folly oleh Charles Babbage pada tahun 1822, dan Hollerith oleh Herman Hollerith pada tahun 1889. Kesemuanya masih berbentuk mesin sepenuhnya tanpa tenaga listrik. Ukuran dan kerumitan strukturnya berdasarkan atas tingkat pengoperasian perhitungan yang dilakukan. Barulah pada tahun 1940, era baru komputer elektrik dimulai sejak ditemukannya komputer elektrik yang menerapkan system ajabar Boolean.

II.Tujuan

1. Untuk mengetahui perkembangan teknologi dari pertama ditemukan sampai sekarang.
2. Meningkatkan ilmu pengetahuan dalam bidang teknologi informasi khususnya computer.
3. Untuk mengetahui jenis jenis computer yang lebih canggih dan memiliki mutu yang lebih tinggi agar dapat dimanfaatkan dengan efektif dan efisien.
4. Memajukan daya pikir manusia agar menciptakan pola pikir inovatif dan kreatif.
5. Agar manusia mampu untuk menghasilkan computer yang lebih canggih dari yang telah pernah ada.
6. Agar masyarakat Indonesia tidak ketinggalan dari negara yang lebih berkembang pada saat sekarang.
7. Dengan mengetahui perkembangan computer, maka masyarakat Indonesia telah mampu untuk berkompetitif secara sehat untuk menghasilkan sesuatu yang lebih bermutu.
8. Untuk mengetahui sesuatu hal atau objek yang dahulunya tidak diketahui dan dengan adanya computer maka hal tersebut dapat diketahui.









BAB II

PEMBAHASAN

1. PENGERTIAN SOFTWARE

Software disebut dengan perangkat lunak, merupakan kumpulan beberapa perintah yang dieksekusi oleh mesin komputer dalam menjalankan pekerjaannya. perangkat lunak ini merupakan catatan bagi mesin komputer untuk menyimpan perintah, maupun dokumen serta arsip lainnya.

Merupakan data elektronik yang disimpan sedemikian rupa oleh komputer itu sendiri, data yang disimpan ini dapat berupa program atau instruksi yang akan dijalankan oleh perintah, maupun catatan-catatan yang diperlukan oleh komputer untuk menjalankan perintah yang dijalankannya.
Untuk mencapai keinginannya tersebut dirancanglah suatu susunan logika, logika yang disusun ini diolah melalui perangkat lunak, yang disebut juga dengan program beserta data-data yang diolahnya. Pengeloahan pada software ini melibatkan beberapa hal, diantaranya adalah sistem operasi, program, dan data. Software ini mengatur sedemikian rupa sehingga logika yang ada dapat dimengerti oleh mesin komputer.


Kebanyakan masyarakat saat ini membagi komputer menjadi dua bagian . Bagian pertama adalah hardware yang merupakan perangkat fisik yang ada di dalam komputer. Dan bagian yang kedua adalah software komputer, yang memberitahukan hardware mengenai apa yang harus dilakukan dan bagaimana melakukannya. Apabila diibaratkan bahwa komputer adalah makhluk hidup, maka hardware adalah tubuhnya seperti mata untuk melihat, paru-paru untuk bernapas dan bagian tubuh lainnya, sedangkan perangkat lunak atau software diibaratkan sebagai kepintarannya, seperti memproses gambar yang dilihat mata, memerintahkan tangan untuk mengangkat objek, dan memaksa tubuh untuk menarik nafas dengan menggunakan paru-paru.
Hardware Komputer, menjadi bagian dari mesin, dan hanya mengerti dua konsep dasar yaitu menyala (on) dan mati (off), konsep on dan off tersebut dinamakan binary. Software komputer dikembangkan agar binary dapat menjadi jalan untuk memberitahukan komputer hardware dalam melakukan tugasnya. Software Komputer menterjemahkan dan mengarahkan pengguna komputer agar mengerti mengenai apa yang dapat dilakukan oleh komputer hardware.

Sebagian besar dari software komputer dibuat oleh programmer dengan menggunakan bahasa pemrograman. Programer menuliskan perintah dalam bahasa pemrograman seperti layaknya bahasa yang digunakan oleh orang pada umumnya dalam melakukan perbincangan. Perintah-perintah tersebut dinamakan “Source Code”. Program komputer lainnya dinamakan Compiler yang digunakan pada source code, dan kemudian mengubah perintah tersebut ke bahasa yang dapat dimengerti oleh komputer. Dan hasilnya dinamakan program executable (EXE).

Software komputer dibagi menjadi dua kategori utama yaitu sistem software dan software aplikasi. Sistem software menyajikan program yang dapat mengijinkan hardware berjalan dengan semestinya. Software aplikasi menyediakan program yang mengijinkan pengguna untuk melakukan sesuatu disamping menjalankan hardware.

A. JENIS SOFTWARE


Secara tak sadar, ketika kita menggunakan komputer, sebenarnya kita telah menggunakan software. Apakah sebenarnya software itu? Software atau perangkat lunak adalah semua program yang digunakan untuk menjalankan komputer atau perangkat lainnya. Secara umum, ada dua jenis software. Pertama adalah software aplikasi. Software aplikasi adalah software yang dibuat untuk tujuan atau kepentingan spesifik, contohnya Notepad untuk teks editor, Winamp untuk memutar file audio, dan sebagainya. Kedua adalah software sistem. Software sistem adalah software yang menjadi tempat semua software aplikasi berjalan . Contohnya adalah Microsoft Windows, Linux, Mac OS, dan sebagainya.

Menurut cara memperolehnya (baca : harga beli dan legalitas), software dapat dibedakan menjadi beberapa jenis. Jenis pertama adalah freeware. Software yang bersifat freeware dapat digunakan tanpa biaya, namun masih memiliki batasan atas hak cipta pengguna. Maksudnya, meskipun kita menggunakan freeware tersebut kita tidak boleh melanggar hak cipta atas software tersebut, misalnya penggandaan untuk orang lain atau menggunakan software tersebut untuk kepentingan lain. Biasanya freeware didistribusikan tanpa disertai dengan kode program yang bersangkutan. Lalu jika kita tidak perlu membayar, apa tujuan si pembuat freeware? Tujuan yang jelas adalah untuk promosi. Baik itu promosi diri sendiri (untuk programmer perorangan) ataupun promosi produk (untuk developer kelas kakap). Tujuan lain yang mungkin adalah untuk mendapatkan masukan dari pengguna dan ada pula (walaupun jarang ditemui) yang bertujuan untuk membobol sistem seseorang. Beberapa contoh freeware adalah Paint.net, Rocket Dock, Ccleaner, dan masih banyak lagi.

Jenis yang kedua adalah shareware. Shareware adalah software yang dapat digunakan tanpa biaya dalam jangka waktu tertentu. Setelah jangka waktu tersebut selesai, pengguna diberi pilihan, apakah akan melanjutkan menggunakan software tersebut (dengan konsekuensi membayar) atau tidak menggunakan lagi software tersebut. Terkadang pada shareware diberi batasan fitur yang hanya bisa digunakan jika pengguna membeli softwarenya. Seperti freeware, shareware masih dibatasi oleh hak cipta. Tujuan pembuatan shareware cukup jelas, yaitu memberikan contoh hasil jadi software tersebut sebelum dibeli oleh pengguna. Beberapa contoh dari shareware ini misalnya StyleXP, Window Blinds, WinRAR, dan sebagainya.

Ketiga, propietary software. Intinya, propietary software itu hampir sama dengan barang yang bisa kita beli di pasar. Jika kita ingin menggunakannya, kita harus membelinya. Propietary software sangat dibatasi oleh hak cipta. Kita tidak diperkenankan mendistribusikan kembali, mengotak-atik program, dan software ini tidak disertai dengan kode sumber.

Jenis keempat yang mulai populer adalah open source software. Berbeda dengan jenis software sebelumnya, open source software memberikan kebebasan kepada kita untuk menggunakan, mengubah sesuai dengan kebutuhan, dan medistribusikan kembali, baik software aslinya maupun yang telah kita ubah. Biasanya software yang bersifat open source menyertakan kode sumber dalam pendistribusiannya. Tujuan pembuatan open source software biasanya bukan untuk tujuan komersil, namun lebih ke tujuan sosial bagaimana sebuah software bisa bermanfaat bagi para pengguna. Beberapa contoh open source software misalnya Pidgin, qGo, Inkscape, gimp, dan masih banyak lagi.. Sumber: http://training-komputer.newgoo.net/tentang-software-komputer-f9/software-dapat-dibedakan-ada-dua-jenis-freeware-shareware-t7.htm
Nama Software dan Kegunaannya
Nama Software Kegunaan
Xing MPEG Player memutar CD, VCD
Linguist kamus bahasa inggris
Winamp memutar lagu - lagu MP3
Total Fonts 2002 koleksi jenis huruf
Microsoft Word pengetikan
Microsoft Excel pembuatan tabel - tabel
Microsoft Front Page pembuatan web site
Microsoft Power Point pembuatan presentasi
Microsoft Outlook pengaturan jadwal, email, nbr tlp, dll
Adobe Acrobat Reader program pembaca dokumen tutorial
LinSys 3D gambar 3 dimensi
Winzip program kompres file ( memperkecil ukuran )
Macromedia Dreamweaver pembuatan web site
Macromedia Flash pembuatan gambar animasi
Macromedia Free Hand pembuatan gambar
Visual Studio komputer programming
Microsoft Web Publishing pengiriman data website ke dunia internet
Corel Draw pembuatan gambar
ACD See melihat - lihat gambar
Swish pembuatan animasi



IDENTIFIKASI JENIS-JENIS SOFTWARE APLIKASI

1) Sistem Operasi
Sistem operasi merupakan sofware yang pertama kali dibaca oleh komputer pada saat booting sebagai dasar pengoperasian komputer.
Terdapat 2 jenis sistem operasi berdasarkan tampilan antarmuka kepada penggunanya (user interface) yaitu yang berbasis CUI (Character User Interface) dan berbasis GUI (Graphical User Interface). Sistem operasi berbasis CUI, misalnya : DOS (Disk Operating Sistem) dan Sistem Operasi UNIX dan Linux pada mode terminal atau konsol. Sedangkan sistem operasi berbasis GUI, misalnya : Microsoft Windows 9x, 2000, NT, XP, serta sistem operasi UNIX dan Linux yang telah mendukung GUI.
2) Program Bantu dan Program Tambahan

Program bantu (utility) merupakan program yang digunakan untuk mengisi kekurangan atau menampilkan kembali file suatu sistem operasi yang terhapus. PC Tools dan Norton Utilities merupakan contoh dari program ini. Salah satu dari kelemahan DOS adalah tidak mampu bekerja di sistem jaringan. Oleh karena itu beberapa perusahaan membuat program tambahan yang dapat mengubah sistem DOS tersebut (single user atau stand alone system) menjadi sistem operasi yang dapat digunakan oleh banyak pemakai (multiuser). Netware, Token R ing dan Lantastic merukan contoh-contoh program ini.
3) Bahasa Komputer (Computer Language)
Computer Language merupakan bahasa yang digunakan untuk membuat program komputer. Disebut bahasa karenacomputer language memiliki kosa kata dan tata bahasa yang harus ditaati oleh pemakainya.



Yang termasuk dalam jenis ini adalah :
a. Low Level Language, merupakan bahasa tingkat rendah karena sulit dipahami dan hanya dapat dimengerti oleh pembuatnya. Yang termasuk program ini adalah bahasa mesin assembly language
b. High Level Language, merupakan bahasa tingkat tinggi karena menggunakan kata-kata yang mudah dimengerti. Contoh dari program ini adalah BASIC, PASCAL, FORTRAN, dsb.

Ada pula beberapa tipe software, diantaranya :

a. Software Games
Jenis software ini termasuk dalam kategori entertainment atau hiburan, software ini memiliki berbagai macam jenis. Jenis-jenis tersebut seperti MMOs (Massive Multiplayer Online games), first-person shooters, action games, roleplaying games, and game petualangan.

b. Software Driver
Program in mengijinkan komputer untuk dapat berinteraksi dengan perangkat hardware tambahan seperti printer, scanner, dan video cards.

c. Software Pendidikan
berbeda dengan jenis program sebelumnya, software pendidikan ini dapat mengajarkan apapun dari komputer, melakukan aktifitas yang berhubungan seperti mengetik atau berbagai macam jenis pendidikan lainnya seperti kimia.



d. Media player dan pengembangan software media lainnya –
Software yang dibuat untuk dapat memainkan atau mengedit media digital seperti file music atau video.

e. Software Produktifitas
Jenis software ini mengijinkan pengguna untuk lebih produktif baik itu dalam menjalankan bisnis atau menjalankan aktifitas produktif lainnya. Contoh dari software ini adalah software pengolah huruf (Ms Words), Software pengatur database, software presentasi dan beberapa software lainnya.
f. Operating sistem
software yang merupakan sumber dari software lainnya yang dapat mengijinkan software lainnya untuk berjalan. Contoh dari software operating sistem ini adalah Window Vista, Mac OS X dan Linux, Apple, Machintos dll, dan pada software inilah program aplikasi lainnya di install.

g. Software Aplikasi

Software yang diinstal pada komputer yang sesuai dengan os yang ada, dimana software aplikasi ini diinstal sesuai dengan kebutuhan User (Pengguna) contohnya, MS Office (Ms Word, Ms Excell, Ms Power Point dll), Software Grafis (Adobe Photoshope, Corel Draw, Autocad dll)


h. Software Program

Software yang berfungsi untuk membuat aplikasi-aplikasi program (Membuat Program baru) seperti program Games, Program data Base, Program Web dll, Contoh Software Program : Visual Basic, Cobol, C++, Program PHP dll

i. Software Aplikasi Tools

Program-program yang berfungsi untuk mempercepat, memperbaiki, dan mempermudah pengoperasian komputer


A. Bahasa Pemograman
1. Pemrograman Prosedural (Procedural Programming) *
• Algoritma berisi urutan langkah-langkah penyelesaian masalah. Ini berarti algoritma adalah proses yang procedural.
• Defenisi procedural adalah :
1. Tahap-tahap kegiatan untuk menyelesaikan suatu aktivitas
2. Metode langkah demi langkah secara eksak dalam memecahkan suatu masalah
• Pada pemrograman procedural, program dibedakan antara bagian data dengan bagian instruksi. Bagian instruksi terdiri atas runtutan instruksi yang dilaksanakan satu persatu secara berurutan oleh pemroses. Alur pelaksanaan instruksi dapat berubah karena adanya pencabangan kondisional. Data yang disimpan didalam memori dimanipulasi oleh instruksi secara beruntun atau procedural. Paradigma pemrograman seperti ini dinamakan pemrograman procedural.
• Bahasa-bahasa tingkat tinggi seperti Cobol, Basic, Pascal, Fortran, dan C. mendukung kegiatan pemrograman procedural, karena itu mereka dinamakan juga bahasa procedural.
2. Pemrograman Terstruktur (Structured Programming) *
• Bahasa pemrograman terstruktur adalah bahasa pemrograman yang mendukung pembuatan program sebagai kumpulan prosedur. Prosedur-prosedur ini dapat saling memanggil dan dipanggil dari manapun dalam program dan dapat menggunakan parameter yang berbeda-beda untuk setiap pemanggilan.
• Prosedur adalah bagian dari program untuk melakukan operasi-operasi yang sudah ditentukan dengan menggunakan parameter tertentu.
• Bahasa pemrograman terstruktur adalah pemrograman yang mendukung abstraksi data, pengkodean terstruktur dan kontrol program terstruktur.
• Prinsip pemrograman terstruktur:
 Pendekatan rancangan dari atas ke bawah (top down design),
 Bagi program ke dalam modul-modul logika yang sejenis,
 Gunakan sub-program untuk proses sejenis yang sering digunakan,
 Gunakan pengkodean terstruktur: (IF - THEN, DO-.. WHILE ),
 Hindarkan penggunaan perintah GO TO bila tidak diperlukan,
 Gunakan nama-nama bermakna (mnemonic names), dan
 Buat dokumentasi yang akurat dan berarti.

• Gaya penulisan program terstruktur:
• Menggunakan indentasi sehingga jelas struktur dan kontrol program.
• Memudahkan pembacaan, pemahaman, penelusuran kesalahan dan pembuatan koreksi.
• Contoh bahasa pemrograman terstruktur : Pascal. Cobol, RPG, ADA, C

3. Pemrograman Modular(Modular Programming) *
Program-program yang besar cenderung sulit terutama karena kompleksitas dari program tersebut, dan banyak bagian dengan hubungan yang rumit dan detail yang sebenarnya tidak perlu.
Salah satu metode dalam penyusunan program terstruktur adalah pemrograman modular. Dalam pemrograman modular, program dipecah-pecah ke dalam modul-modul, dimana setiap modul menunjukkan fungsi dan tugas tunggal. Dengan membagi masalah ke dalam modul-modul, maka masalah akan menjadi sederhana sehingga program dapat lebih mudah disusun dan dipahami.
• Fungsi, Prosedur, atau kumpulan perintah-perintah dipaket menjadi suatu modul.
• Dapat digunakan berulang-ulang, atau digunakan olah fungsi, prosedur lain dalam program.
Setiap program mempunyai sebuah modul program utama, yang mengontrol semua proses yang terjadi, termsuk mengirimkan kontrol program ke submodul untuk melakukan suatu fungsi tertentu.
Pemrograman modular diterapkan dengan menggunakan sub-routine, yaitu sebuah kumpulan perintah yang melakukan tugas pemrosesan yang terbatas.
• Jika persoalan yang ingin dipecahkan melalui program terlalu besar, sebaiknya pemecahan masalah dilakukan secara bertahap
• Setiap tahapan akan menghasilkan modul program
• Setiap modul tersebut diberi nama sehingga untuk menyatakannya cukup dengan menyebut namanya
• Deskripsi fungsional dari setiap modul adalah penting
Program yang didefinisikan modulnya dengan baik akan :
• Mudah dibaca dan dimengerti oleh pemakai
• Efisien, karena modul yang sama mungkin dipakai pada beberapa tahapan program.
• Modular programming banyak dimanfaatkan oleh bahasa pemrograman OOP.

4. Pemrograman Fungsional (Functional Programming) *
• Suatu bahasa dimana ekspresi disusun atas fungsi panggilan (bukan pernyataan). Fungsi: perintah-perintah yang terkumpul menjadi satu dan dapat menghasilkan suatu nilai.

• Disebut bahasa pemrograman fungsional karena memang pada program seluruh kodenya berupa fungsi-fungsi. Bahasa pemrograman fungsional merupakan salah satu bahasa pemrograman yang memperlakukan proses komputasi sebagai evaluasi fungsi-fungsi matematika.

• Isi dari Program fungsional tidak mengandung pernyataan perintah.

• Contoh bahasa pemrograman fungsional : Lisp, Scheme, ML, Haskell,
Erlang.

5. Pemrograman Berorientasi Objek* (OOP/Object-Oriented Programming)
Object / Objek : Elemen yang memiliki fungsi, metode, karakteristik tertentu yang dapat dibedakan dalam dunia nyata.
 Merupakan bahasa pemrograman yang mampu memanfaatkan objek-objek yang tersedia atau membuat suatu objek tertentu dengan menggunakan bahasa pemrograman.
 Mampu merefleksikan kebutuhan-kebutuhan user sebagaimana lakyaknya yang ada di dunia nyata.
 Relative lebih fleksibel dan mudah diadaptasikan terhadap perubahan suatu program.
 Memiliki feature yang memperkuat dan meningkatkan flesibilitas suatu objek dengan diadanya class, instance, encapsulation, inheritance, reuseability, dan polymorphism.
• Karakteristik Bahasa Berorientasi Objek:
 Objek fisik: (Mobil dalam simulasi arus lalu lintas, Pesawat terbang dalam sistem pengontrolan lalu lintas udara)
 Elemen dari lingkungan : (Windows, Objek grafik ( garis, lingkaran, polygon))
 Penyimpanan data (array, stack, Link list, binary tree)
 Entitas orang (karyawan, mahasiswa, pelanggan, pasien)
Contoh bahasa pemrograman beroriantasi object : C++ , SmallTalks , Java


6. Pemrograman Visual
Bahasa Visual
• Penggunaan ekspresi visual(seperti grafik, gambar, atau ikon) yang sistematik dan mempunyai arti
• Bahasa visual adalah himpunan simbol-simbol grafis dan teks yang mempunyai arti semantik dan digunakan untuk menyelesaikan masalah komunikasi di dunia.

Bandingkan:
Bahasa Textual mengacu pada penggunaan karakter (teks).
Bahasa tekstual konvensional hanya bekerja pada 1 dimensi karena compiler/interpreter memproses program pada satu arah saja.

Pemrograman Visual :
• “Penggunaan ekspresi visual (seperti grafik, gambar, atau ikon) dalam proses pemrograman”

• “Mengacu pada aktivitas yang memungkinkan pengguna untuk membuat program dalam dua (atau lebih) dimensi.

Bahasa Pemrograman Visual:
“Bahasa visual digunakan dalam pemrograman visual”

Visualisi:
“Penggunaan representasi visual (grafik, gambar, atau animasi) untuk menggambarkan program, data, struktur atau tingkah laku dinamis sistem yang kompleks.”

Sistem Pemrograman Visual:
“Sistem komputer yang mendukung baik pemrograman visual maupun visualisasi”


Contoh Bahasa Visual (1)
l Kenyataan, bahasa visual
• lebih tua dari saudaranya tekstual
• ada anggapan komputer tidak bisa apa-apa
l Contoh historis:







Examples of Visual Languages (2)
l Bahasa visual Modern
• Pictograms
• Elemen pada GUI
• Simbol File dan folder, dll.
• Skema rangkaian elektronik
• Diagram keadaan, diagram E-R
• Petri Nets: Bahasa visual untuk tingkah laku system

l Bahasa campuran: berisi elemen visual yang mempunyai elemen tekstual (keterangan)


6. Pemrograman Even-Driven (Even-Driven Programming) *

Menggunakan konsep “Jika sebuah aksi / perintah dilakukan terhadap sebuah objek, apa yang akan terjadi / dilakukan oleh objek tersebut selanjutnya.”

Sangat fleksibel dalam pembuatan koding program, karena sudah menggunakan konsep OOP dimana pemrograman dapat dimulai dari objek yang diinginkan tanpa harus terurut.

Merupakan salah jenis bahasa pemrograman yang sudah memanfaatkan GUI (Graphic User Interface).

Biasanya merupakan jenis bahas pemrograman visual.
Contoh : Visual Basic, Visual C++, Delphi, Borland Kilix

Bagi anda yang bekerja dalam bidang web design pasti sudah tidak asing lagi dengan apa yang nama bahasa pemrograman.Bahasa pemrograman yang umum dikenal adalah php dan html.Tapi sebenarnya masih banyak bahasa pemrograman yang lain.

Berikut adalah macam bahasa pemrograman lain yang perlu anda ketahui.

1. Bahasa Pemrograman HTML
HyperText Markup Language (HTML) adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi di dalam sebuah browser Internet.
HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C).
HTML berupa kode-kode tag yang menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang diinginkan.
Sebuah file yang merupakan file HTML dapat dibuka dengan menggunakan browser web seperti Mozilla Firefox atau Microsoft Internet Explorer.

2. Bahasa Pemrograman PHP
PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini.
PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa sekumpulan script yang digunakan untuk mengolah data form dari web.
PHP banyak dipakai untuk membuat situs web yang dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain.
PHP biasanya berjalan pada sistem operasi linux (PHP juga bisa dijalankan dengan hosting windows).

3. Bahasa Pemrograman ASP
ASP adalah singkatan dari Active Server Pages yang merupakan salah satu bahasa pemograman web untuk menciptakan halaman web yang dinamis.
ASP merupakan salah satu produk teknologi yang disediakan oleh Microsoft.
ASP bekerja pada web server dan merupakan server side scripting.

4. Bahasa Pemrograman XML
Extensible Markup Language (XML) adalah bahasa markup serbaguna yang direkomendasikan W3C untuk mendeskripsikan berbagai macam data.
XML menggunakan markup tags seperti halnya HTML namun penggunaannya tidak terbatas pada tampilan halaman web saja.
XML merupakan suatu metode dalam membuat penanda/markup pada sebuah dokumen.

5. Bahasa Pemrograman WML
WML adalah kepanjangan dari Wireless Markup Language, yaitu bahasa pemrograman yang digunakan dalam aplikasi berbasis XML (eXtensible Markup Langauge).
WML ini adalah bahasa pemrograman yang digunakan dalam aplikasi wireless.
WML merupakan analogi dari HTML yang berjalan pada protocol nirkabel.

6. Bahasa Pemrograman PERL
Perl adalah bahasa pemrograman untuk mesin dengan sistem operasi Unix (SunOS, Linux, BSD, HP-UX), juga tersedia untuk sistem operasi seperti DOS, Windows, PowerPC, BeOS, VMS, EBCDIC, dan PocketPC.
PERL merupakan bahasa pemograman yang mirip bahasa pemograman C.

7. Bahasa Pemrograman CFM
Cfm dibuat menggunakan tag ColdFusion dengan software Adobe ColdFusion / BlueDragon / Coldfusion Studio.
Syntax coldfusion berbasis html.

8. Bahasa Pemrograman Javascript
Javascript adalah bahasa scripting yang handal yang berjalan pada sisi client.
JavaScript merupakan sebuah bahasa scripting yang dikembangkan oleh Netscape.
Untuk menjalankan script yang ditulis dengan JavaScript kita membutuhkan JavaScript-enabled browser yaitu browser yang mampu menjalankan JavaScript.

9. Bahasa Pemrograman CSS
Cascading Style Sheets (CSS) adalah suatu bahasa stylesheet yang digunakan untuk mengatur tampilan suatu dokumen yang ditulis dalam bahasa markup.
Penggunaan yang paling umum dari CSS adalah untuk memformat halaman web yang ditulis dengan HTML dan XHTML.
Walaupun demikian, bahasanya sendiri dapat dipergunakan untuk semua jenis dokumen XML termasuk SVG dan XUL.
Spesifikasi CSS diatur oleh World Wide Web Consortium (W3C).

Berikut ini adalah contoh bahasa pemrograman komputer:
• Ada
• ALGOL
• Assembly
• BASIC:
o ASP
o BASIC
o COMAL
o Visual Basic
o Visual Basic for Applications
o VBScript
• Batch (MS-DOS)
• COBOL
• UNIX shell script:
o Bourne shell (sh) script
o Bourne-Again shell (bash) script
o Korn shell (ksh) script
o C shell (csh) script
• C:
o C++
o C#
o Visual C++
• ColdFusion
• dBase dkk.:
o Clipper
o Foxbase
o FoxPro
o Visual FoxPro
• Eiffel
• FORTRAN
• Haskell
• Java
o JavaScript
o JSP
• Lisp
• Logo
• Pascal
o Delphi
• Perl
• Prolog
• Python
• PHP
• Pike
• R
• REXX
• REBOL
• RPG
• Ruby
• Simula
• Smalltalk
• Scheme
• SQL

b. SISTEM OPERASI

Dalam Ilmu komputer, Sistem operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.
Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditaruh pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi.
Biasanya, istilah Sistem Operasi sering ditujukan kepada semua software yang masuk dalam satu paket dengan sistem komputer sebelum aplikasi-aplikasi software terinstall. Dalam Ilmu komputer, Sistem operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.
Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditempatkan pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi

Kalau sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah penghubung antara lapisan hardware dan lapisan software. Lebih jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem file. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur skedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.
Dalam banyak kasus, Sistem Operasi menyediakan suatu pustaka dari fungsi-fungsi standar, dimana aplikasi lain dapat memanggil fungsi-fungsi itu, sehingga dalam setiap pembuatan program baru, tidak perlu membuat fungsi-fungsi tersebut dari awal.
Sistem Operasi secara umum terdiri dari beberapa bagian:

1. Mekanisme Boot, yaitu meletakkan kernel ke dalam memory
2. Kernel, yaitu inti dari sebuah Sistem Operasi
3. Command Interpreter atau shell, yang bertugas membaca input dari pengguna
4. Pustaka-pustaka, yaitu yang menyediakan kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain
5. Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol mereka.

Sebagian Sistem Operasi hanya mengizinkan satu aplikasi saja yang berjalan pada satu waktu (misalnya DOS), tetapi sebagian besar Sistem Operasi baru mengizinkan beberapa aplikasi berjalan secara simultan pada waktu yang bersamaan. Sistem Operasi seperti ini disebut sebagai Multi-tasking Operating System (misalnya keluarga sistem operasi UNIX). Beberapa Sistem Operasi berukuran sangat besar dan kompleks, serta inputnya tergantung kepada input pengguna, sedangkan Sistem Operasi lainnya sangat kecil dan dibuat dengan asumsi bekerja tanpa intervensi manusia sama sekali. Tipe yang pertama sering disebut sebagai Desktop OS, sedangkan tipe kedua adalah Real-Time OS
Sebagai contoh, yang dimaksud sistem operasi itu antara lain adalah Windows, Linux, Free BSD, Solaris, palm, symbian, dan sebagainya.

Seiring dengan berkembangnya Sistem Operasi, semakin banyak lagi layanan yang menjadi layanan inti umum. Kini, sebuah OS mungkin perlu menyediakan layanan network dan koneksitas internet, yang dulunya tidak menjadi layanan inti umum. Sistem Operasi juga perlu untuk menjaga kerusakan sistem komputer dari gangguan program perusak yang berasal dari komputer lainnya, seperti virus. Daftar layanan inti umum akan terus bertambah.

Program saling berkomunikasi antara satu dengan lainnya dengan Antarmuka Pemrograman Aplikasi, Application Programming Interface atau disingkat dengan API. Dengan API inilah program aplikasi dapat berkomunikasi dengan Sistem Operasi. Sebagaimana manusia berkomunikasi dengan komputer melalui Antarmuka User, program juga
berkomunikasi dengan program lainnya melalui API.

Walaupun demikian API sebuah komputer tidaklah berpengaruh sepenuhnya pada program-program yang dijalankan diatas platform operasi tersebut. Contohnya bila program yang dibuat untuk windows 3.1 bila dijalankan pada windows 95 dan generasi setelahnya akan terlihat perbedaan yang mencolok antara window program tersebut dengan program yang lain.
Sistem Operasi saat ini

Sistem operasi-sistem operasi utama yang digunakan komputer sistem umum (termasuk PC, komputer personal) terbagi menjadi 3 kelompok besar:

1. Keluarga Microsoft Windows - yang antara lain terdiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows 7 (Seven) yang akan dirilis pada tahun 2009, dan Windows Orient yang akan dirilis pada tahun 2014)).

2. Keluarga Unix yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.

3. Mac OS, adalah sistem operasi untuk komputer keluaran Apple yang biasa disebut Mac atau Macintosh. Sistem operasi yang terbaru adalah Mac OS X versi 10.4 (Tiger). Awal tahun 2007 direncanakan peluncuran versi 10.5 (Leopard).
Sedangkan komputer Mainframe, dan Super komputer menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.

c. PROGRAM APLIKASI

Prosesor mengeksekusi program-program komputer. Prosesor adalah sebuah chip dalam sistem komputer yang menjalankan instruksi-instruksi program komputer. Dalam setiap detiknya prosesor dapat menjalankan jutaan instruksi.

Program adalah sederetan instruksi yang diberikan kepada suatu komputer. Sedangkan proses adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya. Di dalam bahasan Sistem Operasi, kita lebih sering membahas proses dibandingkan dengan program. Pada Sistem Operasi modern, pada satu saat tidak seluruh program dimuat dalam memori, tetapi hanya satu bagian saja dari program tersebut. Sedangkan bagian lain dari program tersebut tetap beristirahat di media penyimpan disk. Hanya pada saat dibutuhkan saja, bagian dari program tersebut dimuat di memory dan dieksekusi oleh prosesor. Hal ini sangat menghemat pemakaian memori.
Beberapa sistem hanya menjalankan satu proses tunggal dalam satu waktu, sedangkan yang lainnya menjalankan multi-proses dalam satu waktu. Padahal sebagian besar sistem komputer hanya memiliki satu prosesor, dan sebuah prosesor hanya dapat menjalankan satu instruksi dalam satu waktu. Maka bagaimana sebuah sistem prosesor tunggal dapat menjalankan multi-proses? Sesungguhnya pada granularity yang sangat kecil, prosesor hanya menjalankan satu proses dalam satu waktu, kemudian secara cepat ia berpindah menjalankan proses lainnya, dan seterusnya. Sehingga bagi penglihatan dan perasaan pengguna manusia, seakan-akan prosesor menjalankan beberapa proses secara bersamaan.

Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga merubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).

Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:

1. Ready, yaitu status dimana proses siap untuk dieksekusi pada giliran berikutnya
2. Running, yaitu status dimana saat ini proses sedang dieksekusi oleh prosesor
3. Blocked, yaitu status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas
• Koleksi Open-Content Textbook: Wikibooks:Operating System Design

Contoh Software Aplikasi

Payroll Software: Sistem/ Program/ Aplikasi Payroll Indonesia

EuClid Payroll System is the payroll software with automates the pay process by gathering data on employee time and attendance, calculating various deductions and taxes, generating periodic pay cheques and employee tax reports. Perform automatic deposit calculation or writing cheque manually based on human resource and time management data. Set up accounts payable transactions based on employees deductions then send accounting information to the general ledger for posting subsequent pay cycle.

Sejarah desain software dan pengembangannya

Sejarah metodologi pengembangan software seperti pencarian peluru perak, yang tujuan utamanya adalah mengatur kompleksitas sistem software dengan suatu cara. Persepsi personal sya(pengarang software developtment book): 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.

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.
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. Biasanya kita samakan dengan object pada dunia nyata. pada OOP, kita kadang kadang memodelkan object dunia nyata(ex: menulis program simulasi, ketika pertamakali konsep OOP dikembangkan) 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.
Design Patterns

Manusia selalu menggunakan pola dalam dunianya. Seperti seorang anak yang berpikir bahwa temannya yang mempunyai kebiasaan pola belajar yang baik akan mendapat nilai yang baik pula. ketika kita belajar memasak, kita mungkin akan berpikir pertamakali seperti kebiasaan pola memasak untuk menyiapkan resep dan bahan sebelum memulai memasak, kemudian kemudian sering mencoba mencicipi makanan setelah ditambahkan bumbu.dan lain sebagainya.

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.

Extreme Programming
Extreme programming didasarkan pada identifikasi kebutuhan kostumer dan berkonsentrasi pada pengembangan dan pembuatan kebutuhan pelanggan (kostumer) dengan cepat. menggunakan desain sederhana untuk berkomunikasi dengan pelanggan, pengembang extreme secara teratur mengembangkan software dengan prioritas pada keperluan yang paling penting.

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.

ketika kita belajar UML, kita akan melihat beberapa detail kasus-kasus user yang secara lengkap menerangkan aspek individu bagaimana orang akan menggunakan sistem software. extreme programming menggunakan suatu hal yang dinamakan dengan “Cerita User”(user stories) yang dibuat oleh pelanggan untuk menjelaskan persepsinya terhadap sistem yang akan dibangun. cerita user kemudian digunakan untuk mendefinisikan perkiraan waktu pengembangannya, dan membantu mendefinisikan test yang terotomasi yang akan digunakan serta digunakan baik untuk pengembangan maupun untuk test penerimaan pelanggan (acceptance test).

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. tidak diijinkan untuk mengubah kode software sebelum seluruh test unit dilalui. gunakan tools seperti JUnit (www.junit.org) untuk menulis test yang terotomasi.
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 (eclipse.org/aspectj).

sebagai kutipan yang didapat dari situs web AspectJ :

“AspectJ enables the clean modularization of crosscutting concerns such as:error checking and handling, synchronization, context-sensitive behavior, performance optimizations, monitoring and logging, debugging support, multi-object protocols”
Baik free eclipse java IDE (www.eclipse.org) dan IntelliJ Java IDE yang berbayar(www.intellij.com) keduanya mendukung AspectJ.Aspectj adalah sebuah ekstensi (perluasan) bahasa java dan membutuhkan preprocessing. catatan: meskipun telah mengikuti AOP, penulis masih belum menggunakannya pada proyek nyata.

3. PERKEMBANGAN SOFTWARE

Jika kita amati sekarang ini gerakan Open Source sudah mulai merambah di Indonesia yang identik dengan Sistem Operasi Linux. Open Source yang akrab terdengar di telinga orang-orang TI dapat dikatakan sebagai source code yang terbuka bagi siapa saja yang ingin mempelajari maupun ikut mengembangkan. Source Code ini disertakan dengan distribusi paket software yang sudah jadi (hasil kompilasi) sehingga pembeli ataupun pengguna software dapat membedah software tersebut sesuai dengan keperluanya. Bahkan dapat ikut memperbaiki Bug atau kesalahan logika dalam software tersebut.

Salah satu Open Source yang sangat terkenal yaitu sistem operasi linux, setiap distribusinya vendor selalu menyertai source kode linux. Satu hal yang perlu ditekankan bahwa software open source tidak selalu gratis tetapi ada biaya yang dikeluarkan untuk membeli software tersebut. Sebagai contoh Sistem Operasi RedHat Linux yang dapat dibeli dengan harga yang murah. Lalu apa bedanya Sistem Operasi Open Source dengan Sistem Operasi Close Source seperti yang dipunyai pak Bill Gates?
Pada software yang Close Source, paket software tidak dapat didistribusikan lagi selain oleh pembuat/vendor software tersebut. Sedangkan software yang Open Source dapat didistribusikan secara bebas oleh siapapun. Tujuan Open Source ini sebenarnya ingin menghilangkan ketergantungan vendor software, dimana vendor dapat bertindak seenaknya bisa saja vendor menyisipkan kode-kode yang dapat membahayakan software aplikasi lain termasuk juga menaikkan harga lisensi.
Dalam banyak kasus, bila terjadi Bug dalam software yang Close Source
pengguna sangat tergantung kepada vendor yang harus menunggu update
untuk memperbaikinya. Seringkali vendor kurang cepat merespons perkembangan terkini dan permintaan pengguna.

Bagaimana dengan Open Source? Ya, Open Source adalah salah satu solusi yang menjanjikan saat ini bagi suatu perusahaan. Perusahaan dapat membelinya dengan biaya yang jauh lebih murah dan perbaikan maupun keperluan software tersebut dapat dilakukan oleh staf TI perusahaan itu sendiri. Sehingga apa yang terjadi? Dengan software yang open source dapat mendorong semangat tenaga-tenaga TI untuk mempelajari source code tersebut, dapat menganalisa dimana kelemahan software, apa sesungguhnya proses yang berlangsung dalam kerja software, dan sekaligus mencari solusi terhadap kelemahan software yang ditemui. Atau yang lebih ekstrim adalah memodifikasi software sedemikian rupa agar lebih ergonomis / pas digunakan sesuai dengan keperluan.

Apa hubungannya dengan perkembangan software di Indonesia? Kita lihat India, ekspor software dan ekspor tenaga TI sangat mendominasi negara ini. Saat ini India telah menduduki urutan kedua setelah US dalam ekspor software. Perusahaan-perusahaan software di India tumbuh dengan subur karena produk/software lokal mereka mendapat tempat di pasar dalam negeri. Secara otomatis jika software lokal diterima oleh pasar dalam negeri maka pemerintah dapat mengurangi penggunaan devisa negara dan mengurangi tingkat ketergantungan impor teknologi atau software dan tenaga ahli, meningkatkan kapasitas tenaga TI dalam negeri, dan membuka kesempatan kepada industri pengembang software lokal. Sehingga dengan adanya peningkatan kapasitas tenaga TI dan kualitas produksi software maka negara ini mampu melempar keluar hasil produksi dan tenaga TI-nya ke pasar luar negeri. Mungkinkah hal ini terjadi di Indonesia?

Open Source secara tidak langsung mendorongan tenaga TI tidak hanya menjadi End User yang hanya mampu memanfaatkan hasil kerja orang lain. Dengan demikian jika tenaga TI negeri kita hanya berlaku sebagai End User maka bidang TI negara kita akan tertinggal dengan negara-negara lain. Maka dengan adanya Open Source dapat dipelajari source code software dan dapat menganalisa teknik yang digunakan dalam pembuatan software tersebut yang nantinya pengetahuan tersebut dapat dimanfaatkan untuk merancang aplikasi yang berguna.

Dengan melihat perkembangan Open Source yang melaju dengan pesat beberapa waktu yang lalu pemerintah kita Indonesia telah menerapkan Open Source Software yang dideklarasikan dalam Indonesia Go Open Source (IGOS) yang bertujuan untuk mengurangi kesenjangan negara kita dengan negara maju. Semoga langkah yang baik ini sebagai awal perkembangan software Indonesia dan didukung oleh tenaga TI Indonesia dan seluruh lapisan masyarakat Indonesia.
Jenis-jenis software berdasarkan pendistribusiannya :

a) Software "Pencari Alamat Email"

1. Software "Pelacak Asal Alamat Email"
2. Software "Pemeriksa Valid/Tidaknya Alamat Email"
3. Software "Pengirim Email Massal"
4. Software "Pengirim Iklanbaris Massal"
5. Software "IP Ad Web Sender"
6. Software "Search Engine Rangking"
7. Software "Untuk Nge-Buzz, Nge-Boot, Nge-Clone lawan bicara di Yahoo Messenger"
8. Software "Easy Site Submit"
9. Software "Banner Maker"
10. Software "File Splitter"
11. Software "Pembuat Cover Ebook"
12. Software "Pop Up Generator"
13. Software "Penghapus Password File ebook/PDF"
14. Software "Pencari Password File WINZIP"
15. Software "Pencari Password File Microsoft Office XP"
16. Software "Pencari Password File WINRAR"
17. Software "Pencari Password File Archive"
18. Software "Mempercepat Kinerja Modem Koneksi Internet"
19. Software "Koneksi Internet Cepat (ADSL Speed)"
20. Software "agar Akses Internet Anda tidak terputus-putus"
21. Software "Untuk Merubah file Ms Office ke File PDF atau sebaliknya"
22.Software "Untuk Menganalisa Keefektifan Website atau Iklan Yang Telah Anda Pasang
23. di Iklan Baris Intenet"
24. Software "Game "Who Want To Be Millionaire" versi Indonesia"
25. Software "Billing Internet"
26. Software "Validasi Kartu Kredit"
27. Software "Untuk Menyalin Seluruh Website Dgn Sekali Klik"
28. Software "Software Ramalan Horoskop"
29. Software "Al-Qur'an Digital"
30. Software "ZoneAlarm 5.0.590.015"
31. Software "FreeRAM XP Pro 1.3"
32. Software "PC Inspector File Recovery 3.0"
33. Software "PrayAlert Personal Edition 1.3.1015"
34. Software "RAMBooster 1.6"
35. Software "Subseven: Firewall 1.0"
36. Software "Ad-aware 6.0"
37. Software "Ad Blocker 4Google2 2.3.3"
38. Software "Mozilla Firefox 1.0"
39. Software "FxFoto 2.0.043"
40. Software "Download Manager"

b) Paket aneka E-book:

1. E-book "Tips & Tricks Carding"
2. E-book "Apa itu Ebook?"
3. E-book "Cara Membuat Ebook?"
4. E-book "Tips Otomotif"
5. E-book "Kumpulan Tips Dunia Kerja"
6. E-book "Kumpulan Resep Makanan"
7. E-book "cerita Misteri Rumah Tua"
8. E-book "Cerita Petualangan Ali dan Ayahnya"
9. E-book "Kumpulan Humor Terbaik"
10. E-book "Kumpulan Cerita Menarik"
11. E-book "Tips and Trik Windows"
12. E-book "Tips and Trik Registry"
13. E-book "Rahasia Akses Internet Dengan Biaya Super Murah"
14. E-book "Membajak isi Ponsel Orang Lain"
15. E-book " 3 Kunci Sukses Bisnis Internet"
16. E-book "Mencari Uang dengan hanya menonton televisi"
17. E-book "Cara Menghemat Belanja hingga 70%"

MACAM-MACAM SOFTWARE BERDASARKAN KATEGORY :

1. Audio and Video
2. CD and DVD Tools
3. Browsers and Plugins
4. File Sharing
5. Messaging and Chat
6. File Transfer
7. Office and News
8. Developer Tools
9. Anti-Spyware
10. Firewalls and Security
11. Anti-Virus
12. Cleaning and Tweaking
13. Compression and Backup
14. Benchmarking
15. Networking and Admin
16. Desktop
17. Imaging



BAB III

PENUTUP

I.Kesimpulan

Perkembangan software dari masa ke masa selalu mengalami peningkatan. Pada awalnya software bukanlah alat yang diciptakan untuk berbagai kegunaan seperti yang kita amati pada zaman sekarang. Dulu software diciptakan hanya sebagai alat untuk mempermudah dalam penghitungan atau lebih mudahnya sebagai mesin hitung matematika. Tetapi seiring dengan perkembangan zaman software ini terus berevolusi menjadi mesin serba guna khususnya pada bidang industri dan penelitian.

Oleh karena itu, kata dasar software berasal dari kata “software” yang berarti menghitung dengan kata lain komputer berati alat penghitung. Komputer pertama kali ditemukan oleh Charles Babbage, kecerdasannya logika matematikanya yang sangat sepesial membuatnya mampu menciptakan sebuah mesin yang dia sebut dengan nama Analytical Engine pada tahun 1882, sebuah mesin yang berfungsi sebagai alat perhitungan-perhitungan umum.

Diantara teknologi informasi yang hampir disetiap tempat kita temukan software. Sekarang software sangat berkembang pesat hampir setiap tahun software selalu mengalami perkembangan.Orang bisa menggunakan computer dimana saja dirumah, dikafe, disekolah, dan ditempat lainnya. Sedangkan model dan design dari software itu sendiri juga mengalami perkembangan. Dulu apabila orang ingin menggunakan computer maka hanya bias di kantor atau dirumah, kalau sekarang mereka bias menggunakan computer tersebut dimana saja yang mereka inginkan.

II. Saran

Untuk kemajuan teknologi computer maka diharapkan agar perkembangan computer kedepan mampu mengubah pola fikir dan menjadikan masyarakat Indonesia menjadi manusia yang kreatif dan inovatif. Serta tumbuhnya kratifitas hingga menghasilkan suatu karya yang berguna bagi manusia.
Diharapkan dengan adanya teknologi computer dan softwarenya dapat dimanfaat sesuai dengan kegunaan sebenarnya yang mampu mempercerdas bangsa bukannya unutk menghancurkan moral moral bangsa.

Kemajuan computer software dimasa mendatang diharapkan dapat membantu semua jenis pekerjaan manusia sehingga mereka mampu menyelesaikan pekerjaan mereka dengan cepat karena dimasa depan teknologi akan semakin canggih dan semua pekerjaan dikerjakan dengan system komputerisasi.

III. Daftar Pustaka
http://www.kedaisoftware.comSumber : http://ilmukomputer.com
www.Pengertian Software.com
softwareinstalasi.blogspot.com
http://www.anneahira.com/komputer/software-komputer.htm
http://www.cs.ucl.ac.uk/teaching/syllabus/ug/1b12.htm
http://www.softpedia.com
http://www.brothersoft.com
http://website PPI India: +
http://www.ppi-india.uni.cc/BUKA/halaman.php?ArtID=313

15 komentar:

  1. mbak...makalah nya boleh juga nih buat tugas.....
    minta bole kagak?hhehe...

    BalasHapus
  2. mbak artikelnya bleh d copykan...????

    BalasHapus
  3. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  4. makasih ya mbak saya telah mencuri makalah ini dari blog'y mbak......

    sering sama aq ya mbak di BLOG AIRUL BUDAK BAGEUR

    BalasHapus
  5. Makasih Makalahnya

    Tugasnya mencari kok, Mbak. Bukan membuat. Jadi masih atas nama Mbak

    Sekali lagi terima kasih banyak

    BalasHapus
  6. makalah bagus,,numpang copas ya mba,,,,

    BalasHapus
  7. lumayan bwt nambah informasi
    mba sya copas makalah nya bwt tgas

    BalasHapus
  8. makalahnya bagus... numpang copas boleh?? buat nambah materi,,,

    BalasHapus
  9. Makalahnya mantap...ijin share ya ke blog aq...tks

    BalasHapus
  10. http://nurdianaputripangkuan.blogspot.com/

    ijin share makalah booking janda

    BalasHapus
  11. Terimakasih.. tulisannya sangat bermanfaat..
    My blog

    BalasHapus

  12. Terimaksih blog ini sangat membantu saya memahami belog teknologi informasi ini dan sangat berguna bagi saya dan sangat bermanfaat dan jangan lupa kunjungi website kami www.atmaluhur.ac.id
    dan jangan lupa kunjungi website kami website kami www.atmaluhur.ac.id dan blog saya 2809satnight.blogspot.com

    BalasHapus