Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Pengenalan Teknologi Informasi Software Komputer 4-1 Chapter Preview • Pada bab ini, kita akan mempelajari: – Systems Software – Application Software – Bagaimana software dibuat – Perkembangan software – Software untuk perusahaan 4-2 Software Fundamentals • Beberapa istilah dasar …. – Computer programs – serangkaian instruksi untuk komputer – Stored program concept – instruksi tertulis dalam program yang disimpan dan dijalankan oleh CPU ketika dibutuhkan – Programming – proses penulisan (atau coding) program – Programmers – orang yang melakukan programming 4-3 Software Fundamentals (2) • Systems Software Computer Software Systems Software Application Software Yang membuat komputer bekerja Melakukan tugas spesifik – Instruksi yang mengelola sumber daya komputer • Application Software – Instruksi yang melaksanakan tugastugas tertentu 4-4 System Software • System software adalah software yang: – Mengontrol dan mendukung aktifitas sistem komputer – Mendukung software aplikasi dengan menunjukkan fungsi dasar komputer – Memfasilitasi pembangunan program, testing dan debugging – Tidak tergantung terhadap aplikasi-aplikasi tertentu 4-5 Systems Software (2) • System Control Programs Systems Software System Control Programs Systems Support Programs – Mengontrol penggunaan sumber daya sistem (hardware, software, data); operating system • System Support Programs – Specialized support capabilities 4-6 System Control Programs • Operating System – kontrol utama sistem komputer – Mengawasi jalannya komputer secara keseluruhan – Mengalokasikan CPU time dan memori utama bagi program yang sedang dijalankan komputer – Memberikan tampilan antarmuka untuk pengguna terhadap hardware 4-7 Operating System Services • Process management – pengelolaan programprogram yang dijalankan di prosesor – Multitasking atau Multiprogramming - manajemen dua atau lebih program/tasks yang dijalankan di komputer pada waktu yang bersamaan – Multithreading – tipe dari multitasking yang menjalankan 2 atau lebih task/job dari aplikasi yang sama secara bersamaan – Timesharing – banyak pengguna berbagi CPU yang sama, masing menggunakan input/output yang berbeda – Multiprocessing – proses yang bersamaan dengan menggunakan CPU lebih dari satu 4-8 Operating System Services (2) • Virtual memory – ’menambah’ memori komputer sehingga komputer seolah-olah memiliki memori yang besar • File management and security – mengatur akses ke data-data (dalam bentuk file) yang ada di secondary storage • Fault tolerance – toleransi kesalahan yang dapat dimaklumi sepanjang sistem komputer menghasilkan output yang sesuai • User interface – tampilan (dalam bentuk gambar/icon) di output komputer yang memungkinkan pengguna komputer mengendalikan komputer. Interface ini dirancang untuk menggantikan perintah berbasis teks (yang kompleks) 4-9 Tipe-tipe Operating Systems • Desktop Operating Systems Utama Microsoft Products: MS-DOS Windows 95 Windows 98 Windows ME Windows NT Windows 2000 Windows XP Other Products: UNIX Linux Java Operating System (JavaOS) IBM O/S 2 Macintosh Operating System 4-10 Tipe-tipe Operating Systems (2) • Departmental Server Operating Systems – Digunakan ratusan pengguna dalam satu waktu – UNIX, Linux, Windows 2000, Windows XP, Novell NetWare • Enterprise Operating Systems – Bisa digunakan ribuan pengguna dalam satu waktu, mendukung jutaan operasi perharinya – IBM’s OS/390, IBM’s VM (Virtual Machine), IBM’s VSE (Virtual Storage Extended), and IBM’s OS/400 4-11 System Support Programs • Mendukung operasi, manajemen dan pengguna sistem komputer • Contoh: – System Utilities • Melakukan tugas-tugas dasar: mengecek integritas disk, membuat direktori/folder, mengembalikan file-file yang terhapus, manajemen penggunaan memori. 4-12 System Support Programs (continued) • Contoh (continued) – Monitor kinerja • monitor job processing • Menghasilkan reports untuk penggunaan sumber daya sistem – Security monitors • Memonitor sistem komputer sekaligus melindunginya dari gangguan (misalnya virus, malware) ataupun dari penggunan yang tak semestinya (misalnya cracker, pengrusakan) 4-13 Application Software • Program yang melakukan aktifitas tertentu • Types of Application Software – Proprietary application software • Software untuk kebutuhan tertentu – Off-the-shelf application software • Software yang dibuat secara umum untuk kemudian dijual • Bisa merupakan standar ataupun disesuaikan dengan kebutuhan 4-14 Application Software (continued) Personal Application Software - off-the-shelf application programs supporting general types of processing • • • • • Spreadsheets Data management Word processing Desktop publishing Graphics • • • • Multimedia Communication Speech-recognition Groupware – Presentation; Analysis; CAD 4-15 Software Issues • Evaluasi dan Pemilihan Software – Selection factors (untuk software berskala besar) • Size and location of the user base – Apakah software bisa digunakan banyak pengguna sekaligus? Bagaimana dgn remote access? • System administration tools – Apakah ada utiliti untuk memonitor penggunaan software? • Initial and subsequent costs – Pastikan bahwa biaya awal dan pemeliharaan terjangkau • Current and future system capabilities – Pastikan pula bahwa kemampuan software cukup untuk saat ini dan masa mendatang • Existing computing environment – Apakah kompatibel dengan hardware yang dimiliki saat ini? • In-house technical skills – Pastikan pula bahwa tersedia tenaga ahli untuk menggunakan, memelihara atau bahkan memodifikasi software 4-16 Software Issues (continued) • Software Licensing – Copyright - exclusive legal right to reproduce, publish, and sell the software – Licenses - permission granted under the law to engage in an activity otherwise unlawful • Software Upgrades – Pastikan proses upgrade memberikan nilai tambah – Pastikan pula bahwa tidak ada bugs di software yang akan diupgrade – Software upgrade bisa berarti melibatkan pengetahuan baru. Pastikan bahwa pengguna software tetap bisa menggunakan software dengan optimal 4-17 Software Issues (continued) • Open Systems – Beberapa software didisain untuk bekerja di berbagai sistem operasi – Kemampuan ini memberikan fleksibilitas bagi penggunanya sehingga bisa bertukar data tanpa khawatir tentang sistem operasi – Contoh: Microsoft Office, OpenOffice • Open Source Software – Adalah software yang dibangun bersama oleh para programmer dimana sourcecodenya bisa disalin dengan bebas 4-18 Bagaimana Komputer Mengerti Bahasa Pemrograman? (The Language Translation Process) Program written in programming language (source code) Translator program Assembler Compiler Interpreter Program written in machine language (object code) Processed By CPU 4-19 Programming Languages • Bahasa Mesin (generasi pertama bahasa pemrograman) – Bahasa asli komputer – Terdiri dari 0 dan 1 – Merupakan satu-satunya bahasa yang dimengerti oleh komputer • Bahasa Assembly (generasi kedua) – Merupakan translasi dari bahasa mesin (One-to-one correspondence to machine language) – Lebih user-friendly (mnemonic rather than binary digits) – Assembler – program yang menterjemahkan bahasa assembly ke bahasa mesin 4-20 Programming Languages (2) • Procedural Languages (generasi ketiga) – Satu perintah diterjemahkan menjadi beberapa perintah dalam bahasa mesin – Bahasa pemrograman menerangkan pengolahan langkah per langkah – Hampir sama dengan natural language; menggunakan bahasa biasa dan bukan mnemonics – Contoh: Cobol, C, Fortran, QuickBasic – Compiler – menterjemahkan bahasa pemrograman ke bahasa mesin dulu baru dijalankan kemudian – Interpreter – menterjemahkan bahasa pemrograman pada waktu programnya dijalankan 4-21 Programming Languages (continued) • Nonprocedural Language (generasi keempat) – Memungkinkan pengguna untuk meminta hasil yang diinginkan tanpa harus mengetahui detail bagaimana cara membuat programnya – Contoh – bahasa query database SQL – Biasa digunakan oleh non technical users • Natural Language Programming Languages (generasi kelima) – Menterjemahkan bahasa percakapan ke dalam bahasa yang bisa dimengerti oleh komputer – Sangat kompleks dan masih dalam percobaan/eksperimen 4-22 Trend Bahasa Pemrograman • Visual Programming Languages – Menggunakan lingkungan grafis (Graphical User Interface) – Contoh: Visual Basi, Visual C++, Delphi – Populer oleh pengguna non teknis/biasa • Hypertext Markup Language (HTML), PHP dan ASP – HTML merupakan bahasa standar untuk pemformatan tampilan situs web di internet – Biasanya berisi teks, gambar, animasi bahkan hingga video dan program aplikasi – Dipadukan dengan script PHP, ASP, Flash dan lain-lain untuk menghasilkan situs-situs web yang interaktif 4-23 Trend Bahasa Pemrograman (2) • Extensible Markup Language (XML) – Perbaikan terhadap HTML sehingga pengguna tidak perlu aktif dalam mencari informasi di situs web – Dipadukan dengan RSS Feeder akan menjadikan XML yang dapat memberikan push information • Componentware – Komponen-komponen software yang disatukan oleh developer sesuai dengan kebutuhan – “Plug and Play” software development 4-24 Trend Bahasa Pemrograman (3) • Virtual Reality Modeling Language (VRML) – Format file yang memberikan three-dimensional interactive worlds and objects – Bisa digunakan dalam World Wide Web • Object-Oriented Programming Languages (OOP) – berdasarkan objects – memadukan data dan instruksi tentang bagaimana memperlakukan sebuah obyek dalam pemrograman – Contoh: Java, C++ – Menggunakan Unified Modeling Language (UML) untuk mendefinisikan model pemrograman 4-25