Minggu, 03 Februari 2013

Pengenalan Teknologi Informasi  Perangkat Lunak Komputer (Software)

 Pengenalan Teknologi Informasi
 Perangkat Lunak Komputer (Software)
 Chapter Preview
 Materi pada bab ini:

◦ Systems Software

◦ Application Software

◦ Bagaimana software dibuat

◦ Perkembangan software

◦ Software untuk perusahaan
 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
 Software Fundamentals (2)
 Systems Software
◦ Instruksi yang mengelola sumber daya komputer

 Application Software
◦ Instruksi yang melaksanakan tugas-tugas tertentu
 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
 Systems Software (2)
 System Control Programs
◦ Mengontrol penggunaan sumber daya sistem (hardware, software, data); operating system

 System Support Programs
◦ Specialized support capabilities
 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
 Operating System Services
 Process management – pengelolaan program-program 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

 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)
 Tipe-tipe Operating Systems
 Desktop Operating Systems Utama
 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
 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.
 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)
 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
 Application Software (continued)
• Spreadsheets
• Data management
• Word processing
• Desktop publishing
• Graphics
– Presentation; Analysis; CAD
• Multimedia
• Communication
• Speech-recognition
• Groupware
 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
 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
 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
 Bagaimana Komputer Mengerti Bahasa Pemrograman?
(The Language Translation Process)
 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
 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
 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
 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
 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

 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



Tidak ada komentar:

Posting Komentar