Materi 4: Perkembangan perangkat lunak

advertisement
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
Download