05/10/2010
4-1
PENGENALAN TEKNOLOGI INFORMASI Materi 4: Perkembangan perangkat lunak
4-2
CHAPTER PREVIEW
Pada bab ini, kita akan mempelajari: Operating System Systems Software Application Software Bagaimana software dibuat Perkembangan software Software untuk perusahaan
4-3
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
1
05/10/2010
4-4
SOFTWARE FUNDAMENTALS (2) Software dalam komputer dibagi 2 : Systems Software
Computer Software
Instruksi yang mengelola sumber daya komputer
Application
Software
Instruksi yang melaksanakan tugas-tugas tertentu
Systems Software
Application Software
Yang membuat komputer bekerja
Melakukan tugas spesifik
4-5
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 aplikasiaplikasi tertentu
4-6
SYSTEMS SOFTWARE (2) Dalam system komputer terdapat 2 program: System Control Programs
Mengontrol penggunaan sumber daya sistem (hardware, software, data); operating system
System Support Programs
Systems Software
System Control Programs
Systems Support Programs
Specialized support capabilities
2
05/10/2010
4-7
SYSTEM CONTROL PROGRAMS
Operating System kontrol utama dalam sistem komputer, Tugas SO : 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-8
OPERATING SYSTEM SERVICES
Process
pengelolaan,
program-program
yang
dijalankan di prosesor : a.
Multitasking
atau
Multiprogramming
manajemen dua atau lebih program/tasks yang dijalankan di komputer pada waktu yang bersamaan b.
Multithreading tipe dari multitasking yang menjalankan 2 atau lebih task/job dari aplikasi yang sama secara bersamaan
4-9
c.
Timesharing banyak pengguna berbagi CPU yang sama, masing menggunakan input/output yang berbeda
d.
Multiprocessing proses yang bersamaan dengan menggunakan CPU lebih dari satu
3
05/10/2010
4-10
OPERATING SYSTEM SERVICES (2)
Virtual
memory
komputer
sehingga
’menambah’ komputer
memori
seolah-olah
memiliki memori yang besar
File management and security mengatur akses ke data-data (dalam bentuk file) yang ada di secondary storage
4-11
Fault tolerance toleransi kesalahan yang dapat dimaklumi sepanjang sistem komputer menghasilkan output yang sesuai
User interface tampilan (dalam bentuk gambar/icon)
di
output
memungkinkan mengendalikan dirancang
komputer
pengguna komputer.
untuk
yang
komputer Interface
menggantikan
ini
perintah
berbasis teks (yang kompleks)
4-12
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
05/10/2010
4-13
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-14
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-15
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)
5
05/10/2010
4-16
APPLICATION SOFTWARE : Program yang melakukan aktifitas tertentu Tipe dari software aplikasi: a.
Proprietary application software : Software untuk kebutuhan tertentu
b.
Off-the-shelf application software : Software yang dibuat secara umum untuk kemudian dijual, Bisa merupakan standar ataupun disesuaikan dengan kebutuhan
4-17
APPLICATION SOFTWARE (CONTINUED) c. Personal Application Software - off-the-shelf
application programs supporting general types of processing
Spreadsheets Data management Word processing Desktop publishing Graphics o
Multimedia Communication Speech-recognition Groupware
Presentation; Analysis; CAD
4-18
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
6
05/10/2010
4-19
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-20
SOFTWARE ISSUES (CONTINUED)
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-21
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
7
05/10/2010
4-22
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-23
BAHASA PEMROGRAMAN :
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-24
BAHASA PEMROGRAMAN(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
8
05/10/2010
4-25
BAHASA PEMROGRAMAN (3) :
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
4-26
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-27
TREND BAHASA PEMROGRAMAN
Visual Programming Languages o
Menggunakan lingkungan grafis (Graphical User Interface)
o
Contoh: Visual Basi, Visual C++, Delphi
o
Populer oleh pengguna non teknis/biasa
9
05/10/2010
4-28
Hypertext Markup Language (HTML), PHP dan ASP o
HTML merupakan bahasa standar untuk pemformatan tampilan situs web di internet
o
Biasanya berisi teks, gambar, animasi bahkan hingga video dan program aplikasi
o
Dipadukan dengan script PHP, ASP, Flash dan lain-lain untuk menghasilkan situs-situs web yang interaktif
4-29
Extensible Markup Language (XML) o
Perbaikan terhadap HTML sehingga pengguna tidak perlu aktif dalam mencari informasi di situs web
o
Dipadukan dengan RSS Feeder akan menjadikan XML yang dapat memberikan push information
Componentware o
Komponen-komponen software yang disatukan oleh developer sesuai dengan kebutuhan
o
“Plug and Play” software development
4-30
Virtual Reality Modeling Language (VRML) o
Format file yang memberikan three-dimensional interactive worlds and objects
o
Bisa digunakan dalam World Wide Web
Object-Oriented Programming Languages (OOP) o
berdasarkan objects – memadukan data dan instruksi tentang bagaimana memperlakukan sebuah obyek dalam pemrograman
o
Contoh: Java, C++
o
Menggunakan Unified Modeling Language (UML) untuk mendefinisikan model pemrograman
10