Rabu, 06 April 2011

Teknologi Informasi Dan Komunikasi

  • Sistem Informasi adalah sekumpulan komponen dari informasi yang saling terintegrasi untuk mencapai tujuan yang spesifik. Komponen yang dimaksud adalah komponen input, model, output, teknologi, basis data (data base), kontrol atau komponen pengendali.
  • Sistem Informasi adalah sekumpulan hardware, software, brainware, prosedur dan atau aturan yang diorganisasikan secara integral untuk mengolah data menjadi informasi yang bermanfaat guna memecahkan masalah dan pengambilan keputusan
  • Sistem Informasi adalah satu Kesatuan data olahan yang terintegrasi dan saling melengkapi yang menghasilkan output baik dalam bentuk gambar, suara maupun tulisan.
  • Sistem Informasi adalah Proses yang menjalankan fungsi mengumpulkan, memproses, menyimpan, menganalisis, dan menyebarkan informasi untuk kepentingan tertentu; kebanyakan SI dikomputerisasi.
  • Sistem informasi adalah sekumpulan komponen pembentuk sistem yang mempunyai keterkaitan antara satu komponen dengan komponen lainnya yang bertujuan menghasilkan suatu informasi dalam suatu bidang tertentu. Dalam sistem informasi diperlukannya klasifikasi alur informasi, hal ini disebabkan keanekaragaman kebutuhan akan suatu informasi oleh pengguna informasi. Kriteria dari sistem informasi antara lain, fleksibel, efektif dan efisien.
  • Sistem informasi adalah kumpulan antara sub-sub sistem yang salaing berhubungan yang membentuk suatu komponen yang didalamnya mencakup input-proses-output yang berhubungan dengan pengolaan informasi (data yang telah dioleh sehingga lebih berguna bagi user)
  • Sistem informasi adalah sistem yang saling berhubungan dan terintegrasi satu dengan yang lain dan bekerja sesuai dengan fungsinya untuk mengatur masalah yang ada.
  • Suatu sistem informasi (SI) atau information system (IS) merupakan aransemen dari orang, data, proses-proses, dan antar-muka yang berinteraksi mendukung dan memperbaiki beberapa operasi sehari-hari dalam suatu bisnis termasuk mendukung memecahkan soal dan kebutuhan pembuat-keputusan manejemen dan para pengguna yang berpengalaman di bidangnya.
  • Sistem informasi adalah aplikasi komputer untuk mendukung operasi dari suatu organisasi: operasi, instalasi, dan perawatan komputer, perangkat lunak, dan data. Sistem Informasi Manajemen adalah kunci dari bidang yang menekankan finansial dan personal manajemen. Sistem Informasi Penjualan adalah suatu sistem informasi yang mengorganisasikan serangkaian prosedur dan metode yang dirancang untuk menghasilkan, menganalisa, menyebarkan dan memperoleh informasi guna mendukung pengambilan keputusan mengenai penjualan.
Jaringan komputer adalah sebuah sistem yang terdiri atas komputer, software dan perangkat jaringan lainnya yang bekerja bersama-sama untuk mencapai suatu tujuan yang sama. Tujuan dari jaringan komputer adalah:
Agar dapat mencapai tujuan yang sama, setiap bagian dari jaringan komputer meminta dan memberikan layanan (service). Pihak yang meminta/menerima layanan disebut klien (client) dan yang memberikan/mengirim layanan disebut pelayan (server). Arsitektur ini disebut dengan sistem client-server, dan digunakan pada hampir seluruh aplikasi jaringan komputer.

Klasifikasi

Berdasarkan skala :
  • Local Area Network (LAN): suatu jaringan komputer yang menghubungkan suatu komputer dengan komputer lain dengan jarak yang terbatas.
  • Metropolitant Area Network (MAN): prinsip sama dengan LAN, hanya saja jaraknya lebih luas, yaitu 10-50 km.
  • Wide Area Network (WAN): jaraknya antar kota, negara, dan benua. ini sama dengan internet.
Berdasarkan fungsi : Pada dasarnya setiap jaringan komputer ada yang berfungsi sebagai client dan juga server. Tetapi ada jaringan yang memiliki komputer yang khusus didedikasikan sebagai server sedangkan yang lain sebagai client. Ada juga yang tidak memiliki komputer yang khusus berfungsi sebagai server saja. Karena itu berdasarkan fungsinya maka ada dua jenis jaringan komputer:
  • Client-server
    Yaitu jaringan komputer dengan komputer yang didedikasikan khusus sebagai server. Sebuah service/layanan bisa diberikan oleh sebuah komputer atau lebih. Contohnya adalah sebuah domain seperti www.detik.com yang dilayani oleh banyak komputer web server. Atau bisa juga banyak service/layanan yang diberikan oleh satu komputer. Contohnya adalah server jtk.polban.ac.id yang merupakan satu komputer dengan multi service yaitu mail server, web server, file server, database server dan lainnya.



  • Peer-to-peer
    Yaitu jaringan komputer dimana setiap host dapat menjadi server dan juga menjadi client secara bersamaan. Contohnya dalam file sharing antar komputer di Jaringan Windows Network Neighbourhood ada 5 komputer (kita beri nama A,B,C,D dan E) yang memberi hak akses terhadap file yang dimilikinya. Pada satu saat A mengakses file share dari B bernama data_nilai.xls dan juga memberi akses file soal_uas.doc kepada C. Saat A mengakses file dari B maka A berfungsi sebagai client dan saat A memberi akses file kepada C maka A berfungsi sebagai server. Kedua fungsi itu dilakukan oleh A secara bersamaan maka jaringan seperti ini dinamakan peer to peer.


Berdasarkan topologi jaringan, jaringan komputer dapat dibedakan atas:
Berdasarkan kriterianya, jaringan komputer dibedakan menjadi 4 yaitu:
  1. Berdasarkan distribusi sumber informasi/data
    • Jaringan terpusat
      Jaringan ini terdiri dari komputer klient dan server yang mana komputer klient yang berfungsi sebagai perantara untuk mengakses sumber informasi/data yang berasal dari satu komputer server
    • Jaringan terdistribusi
      Merupakan perpaduan beberapa jaringan terpusat sehingga terdapat beberapa komputer server yang saling berhubungan dengan klient membentuk sistem jaringan tertentu.





  2. Berdasarkan jangkauan geografis dibedakan menjadi:
    • Jaringan LAN
      merupakan jaringan yang menghubungkan 2 komputer atau lebih dalam cakupan seperti laboratorium, kantor, serta dalam 1 warnet.



    • Jaringan MAN
      Merupakan jaringan yang mencakup satu kota besar beserta daerah setempat. Contohnya jaringan telepon lokal, sistem telepon seluler, serta jaringan relay beberapa ISP internet.



    • Jaringan WAN
      Merupakan jaringan dengan cakupan seluruh dunia. Contohnya jaringan PT Telkom, PT. Indosat, serta jaringan GSM Seluler seperti Satelindo, Telkomsel, dan masih banyak lagi.





  3. Berdasarkan peranan dan hubungan tiap komputer dalam memproses data.
    • Jaringan Client-Server
      Pada jaringan ini terdapat 1 atau beberapa komputer server dan komputer client. Komputer yang akan menjadi komputer server maupun menjadi komputer client dan diubah-ubah melalui software jaringan pada protokolnya. Komputer client sebagai perantara untuk dapat mengakses data pada komputer server sedangkan komputer server menyediakan informasi yang diperlukan oleh komputer client.



    • Jaringan Peer-to-peer
      Pada jaringan ini tidak ada komputer client maupun komputer server karena semua komputer dapat melakukan pengiriman maupun penerimaan informasi sehingga semua komputer berfungsi sebagai client sekaligus sebagai server.





  4. Berdasarkan media transmisi data
    • Jaringan Berkabel (Wired Network)
      Pada jaringan ini, untuk menghubungkan satu komputer dengan komputer lain diperlukan penghubung berupa kabel jaringan. Kabel jaringan berfungsi dalam mengirim informasi dalam bentuk sinyal listrik antar komputer jaringan.



    • Jaringan Nirkabel(WI-FI)
      Merupakan jaringan dengan medium berupa gelombang elektromagnetik. Pada jaringan ini tidak diperlukan kabel untuk menghubungkan antar komputer karena menggunakan gelombang elektromagnetik yang akan mengirimkan sinyal informasi antar komputer jaringan.
      Audit teknologi informasi (Inggris: information technology (IT) audit atau information systems (IS) audit) adalah bentuk pengawasan dan pengendalian dari infrastruktur teknologi informasi secara menyeluruh. Audit teknologi informasi ini dapat berjalan bersama-sama dengan audit finansial dan audit internal, atau dengan kegiatan pengawasan dan evaluasi lain yang sejenis. Pada mulanya istilah ini dikenal dengan audit pemrosesan data elektronik, dan sekarang audit teknologi informasi secara umum merupakan proses pengumpulan dan evaluasi dari semua kegiatan sistem informasi dalam perusahaan itu. Istilah lain dari audit teknologi informasi adalah audit komputer yang banyak dipakai untuk menentukan apakah aset sistem informasi perusahaan itu telah bekerja secara efektif, dan integratif dalam mencapai target organisasinya.

      Rekayasa Perangkat Lunak

      Rekayasa Perangkat Lunak pada prinsipnya menekankan pada tahapan-tahapan pengembangan suatu perangkat lunak yakni : Analisis, Desain, Implementasi, Testing dan Maintenance. Pada tahap yang lebih luas Rekayasa Perangkat Lunak mengacu pada Manajemen Proyek pengembangan Perangkat Lunak itu sendiri dengan tetap memperhatikan tahapan-tahapan pengembangan sebelumnya. Dalam pengembangannya perangkat lunak memiliki berbagai model yaitu model water fall ('model konvensional' sebagai model terdahulu yang dikembangkan dan karena model water fall nyaris sama dengan siklus hidup pengembangan sistem), model prototype ('model yang disukai oleh user dan pengembang), model sequensial linear, model RAD 'rapid aplikation model', model 'formal method' atau 'metode formal' disini sebelum diadakannya implementasi terlebih dahulu rancangan model yang dibuat diverifikasi terlebih dahulu sehingga tidak ada lagi kesalahan - kesalahan pada saat implementasi. Rekayasa perangkat lunakbahasa Inggris: Software Engineering atau SE) adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas. IEEE Computer Society mendefinisikan rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan, penggunaan dan pemeliharaan perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu penerapan pendekatan engineering atas perangkat lunak.[1] (RPL, atau dalam

      Sejarah

      Istilah software engineering, pertama kali digunakan pada akhir tahun 1950-an dan sekitar awal 1960-an. Pada tahun 1968, NATO menyelenggarakan konferensi tentang software engineering di Jerman dan kemudian dilanjutkan pada tahun 1969. Meski penggunaan kata software engineering masukan konferensi tersebut menimbulkan debat tajam tentang aspek engineering dari pengembangan perangkat lunak, banyak pihak yang menganggap konferensi tersebutlah yang menjadi awal tumbuhnya profesi rekayasa perangkat lunak

      Jenis Lisensi Software dan Perlindungan Hak Ciptanya

        Proprietary software

      Proprietary software adalah nama lain untuk non free sofware. Dahulu sofwere berbayar itu dibagi dua yaitu “semi-free sofwere” dimana kita masih memiliki hak untuk memodifikasi source codenya dan mendistribusikannya secara tidak komersil dan proprietary sofware yang kita tidak bisa memodifikasi source code dan mendistribusikanya.

      Komersial Sofware

      Komersial Software adalah software yang dikembangkan oleh perusahaan dengan tujuan mendapatkan keuntungan. Pengertian Software “Komersial” dan Sofware “Proprietary” itu pengertian yang sangat berbeda. Kebanyakan sofware komersil adalah software proprietary, tetapi ada juga software komersial yang bersifat free, dan ada juga sofware non komersial yang bersifat tidak free sofware.

      Freeware

      Istilah “Freeware” tidak memiliki definisi yang jelas, tetapi umumnya freeware ini mengijinkan untuk mendistribusikan tetapi tidak memiliki izin untuk memodifikasinya (Source Codenya tidak tersedia). Freeware itu bukan merupakan free software. Jadi istilah freeware jangan digunakan untuk free software.

      Free Software

      Free Software mengijinkan seseorang untuk menggunakan, mengkopi, mendistribusikan dan memodifikasinya. Software ini bersifat gratis. Free software itu menghendaki source codenya tersedia.

      Open Source Software

      Istilah open source software digunakan oleh beberapa orang untuk memaksudkan dalam kategori free software. Perbedaan antra Free Software dengan Opens source Software kecil saja, intinya hampir semua free software adalah open source, dan hampir semua open source sofware adalah free. Namun, istilah free software itu lebih baik, karena untuk menggambarkan freedom (kebebasan) daripada “opensource”. Public domain software Adalah sofware yang tidak memiliki hak cipta (copyright) dan source codenya itu bersifat publik domain, namun dalam beberapa kasus program executablenya bersifat publik domain namun source kodenya tidak tersedia. Maka untuk kasus ini, ini bukan merupakan free software karena free software membutuhkan akses kepada source codenya. Sementara itu, kebanyakan free software tidak tersedia dalam bentuk publik domain. Kebanyakan free software itu dilindungi hak cipta (Copyright). Namun pemilik Hak Cipta Free software ini memberikan izin kepada orang lain untuk menggunakannnya secara bebas dengan menggunakan lisensi free software. Terkadang orang-orang menggunakan istilah publik domain untuk mengartikan free atau tersedia gratis. Bagaimanapun publik domain itu adalah istilah hukum yang berarti tidak memiliki hak cipta. (Sumber : Diterjemahkan dari : Categories of free and non-free software, Free Software Foundation, Inc. 2010) Hak Cipta (Copyright) Sofware Berdasarkan UU Hak Cipta UU No 19 tahun 2002, mengenai ciptaan yang dilindungi pada Pasal 12 (1) dinyatakan bahwa program komputer (software) itu termasuk hak cipta yang dilindungi. Adapun berdasarkan Pasal 30 (1) Program Komputer Sofware itu masa waktu perlindungannya adalah selama 50 tahun sejak pertama kali diumumkan. Jika merujuk kepada UU Hak Cipta UU No 19 tahun 2002 ini, maka Sofware yang memiliki hak cipta itu terdiri dari : Proprietary software, Komersial Sofware. Maka seseorang yang mendistribusikannya dan menkopinya bisa dinyatakan melanggar Hak Cipta. Oleh karena itu, bagi para programer bisa memiliki pilihan terhadap software yang dibuatnya apakan akan menjadikan free software ataukah proprietary software dan komersial software. Namun, menurut hemat saya, untuk programer yang bergerak di ranah sosial seperti pendidikan, kesehatan. Seorang programer bisa membuat lisensi free softaware terhadap program yang dibuatnya, terutama untuk di negara-negara berkembang seperti Indonesia agar bisa memberikan manfaat yang luas bagi masyarakat banyak. Namun, bagi perusahaan yang bergerak di sektor bisnis bisa juga mendaftarkan lisensi komersial dan proprietary software terhadap program yang dibuatnya, hal ini sebagai cara untuk mengganti biaya riset pembuatan sofware tersebut. Maka perusahaan yang mendaftarkan softwarenya untuk dilindungi hak ciptanya (Copyright) akan mendapatkan perlindungan Hak Cipta selama 50 tahun semenjak pertama kali diumumkan. Sumber : 1.Buku Panduan Hak Kekayaan Intelektual (HKI), Ditjen HKI, 2006. 2.Categories of free and non-free software, Free Software Foundation, Inc. 2010). Dalam rekayasa perangkat lunak, pemrograman (pelaksanaan) dianggap sebagai salah satu tahap dalam proses pengembangan perangkat lunak. Ada sebuah perdebatan yang sedang berlangsung pada sejauh mana program penulisan adalah seni, kerajinan atau disiplin teknik. [1] Secara umum, baik programming adalah dianggap sebagai aplikasi diukur dari ketiga, dengan tujuan menghasilkan efisien dan solusi perangkat lunak evolvable (kriteria untuk "efisien" dan "evolvable" sangat bervariasi). Disiplin yang berbeda dari berbagai profesi teknis dalam programer, pada umumnya, tidak perlu izin atau lulus standar (atau governmentally diatur) tes sertifikasi untuk menyebut diri mereka "programer" atau bahkan "insinyur perangkat lunak." Namun, mewakili diri sendiri sebagai seorang "Professional Software Engineer" tanpa lisensi dari lembaga yang terakreditasi ilegal di banyak bagian dunia. [Rujukan?] Lain sedang berlangsung perdebatan adalah sejauh mana bahasa pemrograman yang digunakan dalam menulis program komputer yang memengaruhi bentuk program akhir diperlukan. Perdebatan ini analog dengan mengelilingi hipotesis Sapir-Whorf [2] dalam linguistik, yang mendalilkan bahwa suatu bahasa tertentu sifat memengaruhi pikiran kebiasaan dari speaker. Pola bahasa yang berbeda menghasilkan pola pikir yang berbeda. Ide ini menantang kemungkinan mewakili dunia secara sempurna dengan bahasa, karena mengakui bahwa mekanisme bahasa apapun kondisi pikiran pembicara dari masyarakat. Kata lain, pemrograman adalah kerajinan persyaratan mengubah menjadi sesuatu yang dapat mengeksekusi sebuah komputer. [sunting] Sejarah pemrograman Lihat juga: Sejarah bahasa pemrograman Wired plug board untuk IBM 402 Accounting Machine. Konsep perangkat yang beroperasi setelah telah ditetapkan, set instruksi ditelusuri ke Mitologi Yunani, terutama Hephaestus dan pelayan mekanis [3]. Para mekanisme Antikythera kalkulator menggunakan persneling dari berbagai ukuran dan konfigurasi untuk menentukan operasi. Dikenal paling awal dapat diprogram mesin (mesin yang perilakunya dapat dikendalikan dan diprediksi dengan satu set instruksi) adalah Al-Jazari's programmable Automata pada 1206. [4] Salah seorang Al-Jazari's robot ini awalnya sebuah perahu otomatis dengan empat musisi yang mengambang di danau untuk menghibur para tamu di pesta minum kerajaan. Pemrograman perilaku mekanisme ini berarti menempatkan pasak dan Cams ke drum kayu di lokasi tertentu. Ini kemudian akan bertabrakan dengan pengungkit kecil yang beroperasi alat musik perkusi. Keluaran dari perangkat ini adalah drumer kecil bermain berbagai ritme dan pola drum. [5] [6] canggih lainnya mesin diprogram oleh Al-Jazari adalah benteng jam, terkenal karena konsep variabel, yang operator bisa memanipulasi yang diperlukan ( yaitu, panjang siang dan malam). The Jacquard Loom, Joseph Marie Jacquard yang dikembangkan pada tahun 1801, menggunakan serangkaian kartu karton dengan menekan lubang di dalamnya. Pola lubang pola yang mewakili alat tenun harus mengikuti menenun kain. Alat tenun bisa menghasilkan tenun yang sama sekali berbeda dengan menggunakan kumpulan kartu yang berbeda. Charles Babbage mengadopsi penggunaan kartu menekan sekitar tahun 1830 untuk mengendalikan Analytical Engine. Sintesis perhitungan numerik, operasi dan output telah ditentukan, bersama dengan cara untuk mengatur dan masukan petunjuk dalam cara yang relatif mudah bagi manusia untuk hamil dan menghasilkan, menyebabkan perkembangan modern pemrograman komputer. Pengembangan pemrograman komputer dipercepat melalui Revolusi Industri. Pada akhir 1880-an, Herman Hollerith menciptakan rekaman data pada media yang kemudian dapat dibaca oleh mesin. Sebelum menggunakan mesin yang dapat dibaca dari media, di atas, telah untuk kontrol, bukan data. "Setelah beberapa percobaan awal dengan kertas pita, ia menetap di kartu menekan ..."[ 7] Untuk memproses kartu menekan ini, pertama dikenal sebagai" kartu Hollerith "dia menciptakan mesin tabulasi, dan kunci mesin punch. Ketiga penemuannya dasar dari industri pengolahan informasi modern. Pada tahun 1896 ia mendirikan Tabulating Machine Company (yang kemudian menjadi inti dari IBM). Penambahan panel kontrol ke Tipe I Tabulator 1906 memungkinkannya untuk melakukan pekerjaan yang berbeda tanpa harus secara fisik dibangun kembali. Pada akhir 1940-an, ada berbagai plug-board programmable mesin, yang disebut catatan unit peralatan, untuk melakukan tugas-tugas pengolahan data (kartu membaca). Pemrogram komputer awal plug-papan yang digunakan untuk berbagai perhitungan kompleks diminta dari mesin yang baru diciptakan. Data dan instruksi dapat disimpan pada kartu punch eksternal, yang disimpan dalam rangka program dan disusun dalam deck. Penemuan arsitektur Von Neumann memungkinkan program komputer untuk disimpan dalam memori komputer. Program awal harus susah payah dibuat dengan menggunakan instruksi mesin tertentu, sering kali dalam notasi biner. Setiap model komputer mungkin akan memerlukan berbagai instruksi untuk melakukan tugas yang sama. Bahasa assembly kemudian dikembangkan yang memungkinkan programmer menentukan setiap instruksi dalam format teks, singkatan memasukkan kode untuk setiap operasi, bukan menetapkan sebuah nomor dan alamat dalam bentuk simbolik (misalnya, ADD X, TOTAL). Pada tahun 1954 ditemukan Fortran, menjadi yang pertama bahasa pemrograman tingkat tinggi yang memiliki implementasi fungsional. [8] [9] Hal diperbolehkan pemrogram untuk menentukan perhitungan dengan memasukkan formula secara langsung (misalnya Y = X * 2 + 5 * X + 9) . Program teks, atau sumber, diubah menjadi instruksi mesin menggunakan program khusus yang disebut kompilator. Banyak bahasa lainnya dikembangkan, termasuk beberapa program untuk komersial, seperti COBOL. Program itu sebagian besar masih masuk menggunakan kartu atau kertas punch tape. (Lihat pemrograman komputer di era kartu punch). Pada akhir 1960-an, perangkat penyimpanan data dan terminal komputer menjadi cukup murah sehingga program dapat dibuat dengan mengetikkan langsung ke dalam komputer. Editor teks dikembangkan yang memungkinkan perubahan dan perbaikan harus dilakukan jauh lebih mudah dibandingkan dengan punch card. Ketika waktu telah berkembang, komputer telah membuat lompatan raksasa di bidang pengolahan kekuasaan. Ini telah membawa bahasa pemrograman baru yang lebih disarikan dari hardware yang mendasarinya. Walaupun bahasa tingkat tinggi biasanya dikenakan biaya overhead yang lebih besar, peningkatan kecepatan komputer modern telah membuat penggunaan bahasa-bahasa ini jauh lebih praktis daripada di masa lalu. Ini semakin disarikan bahasa biasanya lebih mudah untuk belajar dan memungkinkan para programmer untuk mengembangkan aplikasi jauh lebih efisien dan dengan lebih sedikit kode. Namun, bahasa tingkat tinggi masih praktis untuk beberapa program, seperti yang di mana tingkat rendah diperlukan pengendalian perangkat keras atau di mana kecepatan pemrosesan berada pada premi. Sepanjang paruh kedua abad kedua puluh, pemrograman adalah karier yang menarik di sebagian besar negara-negara maju. Beberapa bentuk pemrograman telah lepas pantai semakin tunduk pada outsourcing (impor perangkat lunak dan jasa dari negara-negara lain, biasanya pada upah yang lebih rendah), membuat keputusan karier pemrograman di negara maju lebih rumit, sementara meningkatkan peluang ekonomi di daerah-daerah kurang berkembang. Tidak jelas sejauh mana tren ini akan berlanjut dan seberapa dalam dampak akan programmer upah dan kesempatan. [sunting] Modern pemrograman [sunting] Kualitas persyaratan Apapun pendekatan pengembangan perangkat lunak mungkin, program akhir harus memenuhi beberapa sifat mendasar. Properti berikut adalah di antara yang paling relevan:



    • Efisiensi / kinerja: jumlah sumber daya sistem program yang mengkonsumsi (prosesor waktu, ruang memori, perangkat lambat seperti disk, bandwidth jaringan dan bahkan sampai batas tertentu interaksi dari pemakai): semakin sedikit, semakin baik. Ini juga termasuk pembuangan benar beberapa sumber, seperti membersihkan file-file sementara dan tidak adanya kebocoran memori.



    • Reliabilitas: seberapa sering hasil dari sebuah program sudah benar. Hal ini tergantung pada kebenaran konseptual algoritma, dan pemrograman minimisasi kesalahan, seperti kesalahan dalam manajemen sumber daya (misalnya, buffer overflows dan ras kondisi) dan kesalahan logika (seperti pembagian dengan nol).



    • Kekokohan: seberapa baik program masalah mengantisipasi bukan karena kesalahan programmer. Ini termasuk situasi seperti salah, tidak pantas atau merusak data, tidak tersedianya sumber daya yang dibutuhkan seperti memori, sistem operasi layanan dan koneksi jaringan, dan kesalahan pengguna.



    • Kegunaan: yang ergonomi sebuah program: kemudahan dengan mana seseorang dapat menggunakan program untuk tujuan, atau dalam beberapa kasus bahkan tujuan tak terduga. Isu-isu tersebut dapat membuat atau menghancurkan kesuksesan bahkan tanpa masalah lain. Hal ini melibatkan berbagai tekstual, grafis dan kadang-kadang elemen-elemen perangkat keras yang meningkatkan kejelasan, intuitif, kekompakan dan kelengkapan program antarmuka pengguna.



    • Portabilitas: kisaran perangkat keras komputer dan platform sistem operasi yang kode sumber dari program dapat dikompilasi / ditafsirkan dan lari. Hal ini tergantung pada perbedaan-perbedaan dalam fasilitas pemrograman yang disediakan oleh platform yang berbeda, termasuk hardware dan sistem operasi sumber daya, perilaku yang diharapkan dari hardware dan sistem operasi, dan ketersediaan platform compiler tertentu (dan kadang-kadang perpustakaan) untuk bahasa dari source code.



    • Kemampu-rawatan: kemudahan dengan sebuah program yang dapat dimodifikasi oleh pengembang sekarang atau di masa mendatang dalam rangka untuk membuat perbaikan atau penyesuaian, memperbaiki bug dan lubang keamanan, atau disesuaikan dengan lingkungan baru. Praktek yang baik selama pengembangan awal membuat perbedaan dalam hal ini. Kualitas ini mungkin tidak secara langsung jelas bagi pengguna akhir tetapi dapat secara signifikan memengaruhi nasib sebuah program jangka panjang.


    algorithmic kompleksitas
    Bidang akademik dan praktek teknik pemrograman komputer yang baik terutama berkaitan dengan menemukan dan menerapkan algoritma yang paling efisien untuk suatu masalah kelas. Untuk tujuan ini, algoritma diklasifikasikan menjadi perintah dengan menggunakan apa yang disebut notasi Big O, O (n), yang mengungkapkan penggunaan sumber daya, seperti waktu eksekusi atau pemakaian memori, dalam hal ukuran sebuah input. Ahli programmer yang akrab dengan berbagai mapan algoritma dan kompleksitas masing-masing dan menggunakan pengetahuan ini untuk memilih algoritma yang paling cocok dengan keadaan. [sunting] Metodologi
    Langkah pertama dalam sebagian besar proyek-proyek pengembangan perangkat lunak formal adalah analisis persyaratan, diikuti dengan pengujian untuk menentukan model nilai, pelaksanaan, dan kegagalan penghapusan (debug). Terdapat banyak pendekatan yang berbeda untuk masing-masing tugas. Salah satu pendekatan yang populer untuk analisis kebutuhan adalah Kasus Gunakan analisis.
    Teknik model populer meliputi Object-Oriented Analysis and Design (OOAD) dan Model-Driven Architecture (MDA). The Unified Modeling Language (UML) adalah sebuah notasi yang digunakan untuk kedua OOAD dan MDA.
    Teknik yang sama digunakan untuk desain database adalah Entity-Relationship Modeling (ER Modeling).
    Pelaksanaan teknik termasuk bahasa imperatif (object-oriented atau prosedural), fungsional bahasa, dan logika bahasa. [sunting] Mengukur pemakaian bahasa
    Sangat sulit untuk menentukan apa yang paling populer bahasa pemrograman modern. Beberapa bahasa yang sangat populer untuk jenis aplikasi tertentu (misalnya, COBOL masih kuat di pusat data perusahaan, sering pada mainframe besar, FORTRAN dalam aplikasi teknik, bahasa scripting dalam pengembangan web, dan C dalam aplikasi embedded), sementara beberapa bahasa teratur digunakan untuk menulis berbagai macam aplikasi.
    Metode untuk mengukur popularitas bahasa pemrograman meliputi: menghitung jumlah iklan lowongan pekerjaan yang menyebutkan bahasa [10], jumlah buku-buku pengajaran bahasa yang dijual (overestimates ini pentingnya bahasa baru), dan perkiraan jumlah baris yang ada kode yang ditulis dalam bahasa (meremehkan ini jumlah pengguna bahasa bisnis seperti COBOL). [sunting] Debugging Sebuah bug, yang debugged pada tahun 1947.
    Debugging adalah tugas yang sangat penting dalam proses pengembangan perangkat lunak, karena program yang salah dapat memiliki konsekuensi yang signifikan bagi penggunanya. Beberapa bahasa yang lebih rentan terhadap beberapa jenis kesalahan karena mereka tidak memerlukan spesifikasi kompiler untuk melakukan pengecekan sebanyak bahasa lainnya. Penggunaan alat analisis statis dapat membantu mendeteksi beberapa kemungkinan masalah.
    Debug sering dilakukan dengan IDE seperti Visual Studio, NetBeans, dan Eclipse. Standalone debugger seperti gdb juga digunakan, dan ini kurang sering menyediakan lingkungan visual, biasanya menggunakan baris perintah. [sunting] Bahasa pemrograman Artikel utama: bahasa pemrograman dan bahasa pemrograman Daftar
    Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda (disebut paradigma pemrograman). Pilihan bahasa yang digunakan adalah tunduk pada banyak pertimbangan, seperti kebijakan perusahaan, kesesuaian untuk tugas, ketersediaan pihak ketiga paket, atau keinginan individunya. Idealnya, bahasa pemrograman yang paling cocok untuk tugas yang dihadapi akan dipilih. Trade-off dari ideal ini melibatkan cukup menemukan programmer yang tahu bahasa untuk membangun sebuah tim, ketersediaan compiler untuk bahasa, dan efisiensi dengan program-program yang ditulis dalam bahasa tertentu mengeksekusi.
    Allen Downey, dalam bukunya How To Think Like A Computer Scientist, menulis:
    Banyak bahasa komputer menyediakan mekanisme untuk memanggil fungsi yang disediakan oleh perpustakaan. Menyediakan fungsi-fungsi di perpustakaan mengikuti konvensi runtime yang sesuai (misalnya, metode lewat argumen), maka fungsi-fungsi ini dapat ditulis dalam bahasa lainnya. [sunting] Pemrogram Artikel utama: Programmer Lihat juga: Software pengembang dan Software engineer
    Pemrogram komputer adalah orang-orang yang menulis perangkat lunak komputer. Pekerjaan mereka biasanya meliputi:
    * Coding
       * Kompilasi
       * Dokumentasi
       * Integrasi
       * Pemeliharaan
       * Persyaratan analisis
       * Software arsitektur
       * Software pengujian
       * Spesifikasi
       * Debugging
    [sunting] Lihat pula Wikipedia Buku Wikipedia: Buku memiliki buku pada: Pemrograman Cari Wikiquote Wikiquote memiliki koleksi kutipan yang berkaitan dengan: Pemrograman Artikel utama: Daftar topik dasar pemrograman komputer
    * Accu (organisasi)
       * Association for Computing Machinery
       * Computer pemrograman di era kartu pons
       * Hello world program
       * Daftar topik dasar pemrograman komputer
       * Daftar topik pemrograman komputer
       * Pemrograman paradigma
       * Software engineering
       * The Art of Computer Programming
    [sunting] Referensi
    1. ^ Paul Graham (2003). Hacker dan Pelukis. http://www.paulgraham.com/hp.html
    Diperoleh 2006/08/22.
      2. ^ Kenneth E. Iverson, originator dari bahasa pemrograman APL,
     percaya bahwa hipotesis Sapir-Whorf diterapkan pada bahasa komputer 
    (tanpa benar-benar menyebutkan nama hipotesis). Penghargaan Turing ceramah-Nya,
     "Notasi sebagai alat berpikir", ini ditujukan untuk tema ini,
     menyatakan bahwa lebih kuat dibantu notasi berpikir tentang algoritma komputer.
     Iverson KE, "Notasi sebagai alat berpikir", Communications of the ACM, 23: 444-465 
    (Agustus 1980).
      3. ^ New World Encyclopedia Online Edition New World Encyclopedia
      4. ^ Al-Jazari - the Mechanical Genius, MuslimHeritage.com
      5. ^ Sebuah abad ke-13 Programmable Robot, University of Sheffield
      6. ^ Fowler, Charles B. (Oktober 1967), "Museum of Music: A History of Mechanical Instrumen", 
    Musik Pendidik Journal 54 (2): 45-49, DOI: 10.2307/3391092
      7. ^ Columbia University Computing Sejarah - Herman Hollerith
      8. ^ [1]
      9. ^ [2]
     10. ^ Survei iklan Ayub menyebutkan bahasa tertentu>

    Bahasa pemrograman
    , atau sering diistilahkan juga dengan bahasa komputer, adalah teknik komando/instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
    Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:



  5. Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110



  6. Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.



  7. Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.



  8. Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.


Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.

Daftar Bahasa Pemrograman

Berikut ini adalah daftar bahasa pemrograman komputer:

Tidak ada komentar:

Posting Komentar