DAFTAR ISI
BAB I PENDAHULUAN................................................................................................. 4
BAB II ....................................................................................................................... 5
C. Sikap kerja yang diperlukan dalam menggunakan diagram program dan deskripsi
program ............................................................................................................... 37
BAB IV .................................................................................................................... 38
BAB I PENDAHULUAN
A. TUJUAN UMUM
Setelah mempelajari modul ini peserta diharapkan mampu menggunakan spesifikasi program
B. TUJUAN KHUSUS
Adapun tujuan mempelajari unit kompetensi melalui buku informasi menggunakan spesifikasi
program (j.620100.009.02) ini guna memfasilitasi peserta sehingga pada akhir diklat
diharapkan memiliki kemampuan sebagai berikut:
1. Menggunakan metode pengembangan program dengan mendefinisikan ragam metode
pengembangan aplikasi (software development) dan memilih metode pengembangan
aplikasi sesuai kebutuhan dengan cermat, tepat dan teliti.
2. Menggunakan diagram program dan deskripsi program dengan mendefinisikan ragam
diagram program dalam metodologi pengembangan sistem dan menerapkan metode
pemodelan diagram object, diagram komponen pada implementasi program sesuai
spesifikasi secara cermat, tepat dan teliti.
3. Menerapkan hasil pemodelan ke dalam pengembangan program dengan memilih hasil
pemodelan diagram dan hasil pemrograman (Integrated Development Environment-IDE)
yang mendukung kemampuan metodologi bahasa pemrograman sesuai spesifikasi
secara cermat, tepat dan teliti.
BAB II
MENGGUNAKAN METODE PENGEMBANGAN PROGRAM
Model Prototype
Metode Prototype merupakan suatu paradigma baru dalam metode pengembangan
perangkat lunak dimana metode ini tidak hanya sekedar evolusi dalam dunia
pengembangan perangkat lunak, tetapi juga merevolusi metode pengembangan perangkat
lunak yang lama yaitu sistem sekuensial yang biasa dikenal dengan nama SDLC atau
waterfall development model. Dalam Model ini, prototype dari perangkat lunak yang
dihasilkan kemudian dipresentasikan kepada pelanggan, dan pelanggan tersebut diberikan
kesempatan untuk memberikan masukan sehingga perangkat lunak yang dihasilkan
nantinya betul-betul sesuai dengan keinginan dan kebutuhan pelanggan. Perubahan dan
presentasi prototype dapat dilakukan berkali-kali sampai dicapai kesepakatan bentuk dari
perangkat lunak yang akan dikembangkan. Teknik – teknik yang digunakan dalam
membuat prototipe (Prototyping) Meliputi, antara lain: 1) Perancangan Model
2)Perancangan Dialog 3)Simulasi. Sedangkan karakteristik dalam proses pengembangan
pada metode prototype, meliputi 4 empat langkah yaitu : 1)Pemilihan fungsi, 2)Penyusunan
Sistem Informasi, 3)Evaluasi sistem, 4) Penggunaan Selanjutnya
Metode ini menyajikan gambaran yang lengkap dari suatu sistem perangkat lunak,
terdiri atas model kertas, model kerja dan program. Pihak pengembang akan melakukan
identifikasi kebutuhan pemakai, menganalisa sistem dan melakukan studi kelayakan serta
studi terhadap kebutuhan pemakai, meliputi model interface, teknik prosedural dan
teknologi yang akan dimanfaatkan. Tahapan – tahapan Proses Pengembangan dalam
Model Prototype, yaitu :
a. Pengumpulan kebutuhan. Pelanggan dan pengembang bersama-sama
mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua
kebutuhan, dan garis besar sistem yang akan dibuat.
b. Membangun prototyping. Membangun prototyping dengan membuat perancangan
sementara yang berfokus pada penyajian kepada pelanggan (misalnya dengan
membuat input dan format output).
c. Evaluasi protoptyping. Evaluasi ini dilakukan oleh pelanggan, apakah prototyping
yang sudah dibangun sudah sesuai dengan keinginan pelanggan atau belum. Jika
sudah sesuai, maka langkah selanjutnya akan diambil. Namun jika tidak, prototyping
direvisi dengan mengulang langkah-langkah sebelumnya.
d. Mengkodekan sistem. Dalam tahap ini prototyping yang sudah di sepakati
diterjemahkan ke dalam bahasa pemrograman yang sesuai.
e. Menguji sistem. Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai,
kemudian dilakukan proses Pengujian. Pengujian ini dilakukan dengan White Box,
Black Box, Basis Path, pengujian arsitektur, dll.
f. Evaluasi Sistem. Pelanggan mengevaluasi apakah perangkat lunak yang sudah jadi
sudah sesuai dengan yang diharapkan . Jika ya, maka proses akan dilanjutkan ke
tahap selanjutnya, namun jika perangkat lunak yang sudah jadi tidak/belum sesuai
dengan apa yang diharapkan, maka tahapan sebelumnya akan diulang.
g. Menggunakan sistem. Perangkat lunak yang telah diuji dan diterima pelanggan siap
untuk digunakan.
Model Prototyping ini sangat sesuai diterapkan untuk kondisi yang beresiko tinggi di mana
masalah-masalah tidak terstruktur dengan baik, terdapat fluktuasi kebutuhan pemakai
yang berubah dari waktu ke waktu atau yang tidak terduga, bila interaksi dengan pemakai
menjadi syarat mutlak dan waktu yang tersedia sangat terbatas sehingga butuh
penyelesaian yang segera. Model ini juga dapat berjalan dengan maksimal pada situasi
di mana sistem yang diharapkan adalah yang inovatif dan mutakhir sementara tahap
penggunaan sistemnya relatif singkat. Berikut merupakan Jenis – jenis dari Prototyping :
a. Feasibility prototyping, digunakan untuk menguji kelayakan dari teknologi yang
akan digunakan untuk system informasi yang akan disusun.
b. Requirement prototyping. digunakan untuk mengetahui kebutuhan aktivitas
bisnis user.
c. Desain Prototyping, digunakan untuk mendorong perancangan sistem informasi
yang akan digunakan.
d. Implementation prototyping. merupakan lanjutan dari rancangan prototype,
prototype ini langsung disusun sebagai suatu sistem informasi yang akan
digunakan.
1.1. Bcb
1.2.
1. development)sesuai kebutuhan.
2. Xzc
BAB III
MENGGUNAKAN DIAGRAM PROGRAM DAN DESKRIPSI
PROGRAM
Dari contoh spesifikasi kebutuhan diatas dapat dibuat beberapa model yaitu: model
diagram aliran informasi (DFD). Dari DFD dapat diturunkan menjadi diagram Struktur chart.
Dari diagram struktur chart dapat dituliskan algoritma atau spesifikasi program komputer
dalam bentuk bahasa natural, pseudocode atau flowchart. Selanjutnya dapat diterjemahkan
ke dalam kode program menggunakan bahasa pemrograman sehingga program tersebut
dapat dijalankan atau dieksekusi menggunakan perangkat mesin/komputer. Jika
class dan operation dalam konsep dasarnya, maka model ini lebih cocok untuk penulisan
perangkat lunak dalam bahasa berorientasi objek seperti C++, Java, C# atau VB.NET, dan
lainnya. UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam bahasa basic
atau C. Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik.
Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai
diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax
mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML
diturunkan dari 3 notasi yang telah ada sebelumnya: 1) Grady Booch OOD (Object-Oriented
Design), 2) Jim Rumbaugh OMT (Object Modeling Technique), dan 3) Ivar Jacobson OOSE
(Object-Oriented Software Engineering). Sejarah perkembangan UML dapat disimpulkan
sebagai berikut:
Tahun 1994: munculnya tokoh pelopor UML (Booch,Rumbough dan Jacobson)
Tahun 1995: diluncurkan draft pertama UML (versi 0.8)
Tahun 1996: pengkoordinasian model oleh Object Management Group (OMG)
Tahun 1997: munculnya UML (versi 1.1)
Tahun 1999: penyusunan tiga buku UML oleh (Booch,Rumbough dan Jacobson)
Tahun 1999: UML menjadi standart bahasa permodelan sistem berorientasi objek
Tahun 2003: diluncurkan UML versi 1.5
Tahun 2004: dluncurkan UML Versi 2.0
Berdasarkan UML versi 1.5 ragam model diagram dibedakan menjadi sembilan jenis yaitu
sebagai berikut:
1. Use case diagram: menggambaran diagram fungsionalitas yang diharapkan dari
sebuah sistem.
2. Class diagram: menggambarkan struktur dan deskripsi class beserta hubungan satu
dengan lainnya (pewarisan, asosiasi, dan lain-lain).
3. Object diagram: menggambarkan struktur dan deskripsi object-object yang terkait
dengan sistem.
4. Statechart diagram: menggambarkan prilaku/behaviour dari suatu case atau class
tertentu dalam sistem.
5. Activity diagram: menggambarkan proses yang berjalan dari suatu sistem atau case
tertentu.
6. Sequence diagram: menggambarkan interaksi antar objek di dalam dan di sekitar
sistem.
7. Collaboration diagram: menggambarkan interaksi antar objek yang lebih
menekankan peran objek.
memberikan pengaruh pada elemen yang lain. Dalam relasi ini terdiri dari dua jenis
stereotype : Include dan Extend. Include menunjukkan bahwa suatu bagian dari
elemen(yg ada di garis tanpa panah) memicu eksekusi bagian dari elemen lain (yg
ada di garis dengan panah). Contoh A --include--> B (operasi di class A memicu
dieksekusinya operasi di class B. Extend menunjukkan bahwa suatu bagian dari
elemen digaris tanpa panah bisa disisipkan ke dalam elemen yang ada di garis
dengan panah. Contoh A --extend--> B (suatu fungsi dari case A bisa disisipkan ke
dalam use case B dengan kata lain A optional untuk B
Nama Notasi/Simbol Keterangan
Simbol/Notasi
Actor Merepresentasikan entitas, person/ orang
misal: Admin, User
Contoh berikut menjelaskan use case diagram system ATM dengan spesifikasi kebutuhan
sistem sebagai berikut:
System dapat menyediakan “login” untuk user dan admin
System dapat menyediakan “logout” untuk user dan admin
System menyediakan “Registrasi account” untuk user dan admin
System dapat menampilkan menu transaksi untuk user
System dapat menyediakan transaksi pembayaran, cek saldo dan penarikan uang
objek mana yang bertanggung jawab untuk aktivitas tertentu. Komponen-komponen dalam
activity diagram diperlihatkan dalam tabel dibawah ini:
Untuk dapat menggambarkan aktivity diagram dibutuhkan deskriipsi case skenario pada
use case diagram. Case skenario menggambarkan urutan langkah-langkah kejadian atau
proses yang dilakukan aktor dan sistem. tabel berikut mengilustrasikan skenario dari case
“Login”
Name : Login
Aktor : Nasabah
Purpose : Melakukan login ke sistem ATM
Overview :
Type :
˜ Package: atribute/methode ini dapat diakses pada pada package yang sama
- Private: atribute/methode ini hanya dapat diakses pada class yang sama
Object adalah merupakan suatu contoh dari sebuah class (an instance of a class).
Object merupakan suatu hal khusus yang mempunyai nilai spesifik dari atribute dari suatu
class Sifat-sifat dari object adalah :
Is Identical (because Object has own unique ID)
Has Behavior (because Object has Method)
Has State (because Object has instance parameter)
Gambar berikut merupakan salah satu contoh class dan object dengan nama classnya :
WashingMachine dan nama objectnya myWasher
myWasher:WashingMachine Atribute dari kelas :
SerialNumber : GL57774
(a) BrandName : Laundatorium
WashingMachine ModelName : washmeister
- SerialNumber : std::string
Capacitity : 16 pounds
- GrandName : std::string
- ModelName : std::string Methode dari kelas:
- Capacity : int +acceptClothes():void
+acceptDetergent():void
+ acceptClothes () : void
+ acceptDetergent () : void
+turnOn():void
+ turnOn () : void +turnOff():void
+ turnOff () : void masing-masing bertipe public dan tidak
(b) mempunyai return value (void)
Gambar… Contoh pendefinisian sebuah class (b) dan object (a)
Gambar … tata letak bagian-bagian mesin ATM dan hasil identifikasi object
1..1
Dalam relasi class diagram dikenal istilah Multiplicity sebagaimana relasi antar entitas dalam
basis data yaitu kardinalitas. Parameter ini menjelaskan seberapa banyak Jumlah relasi
dimana sebuah object mengambil bagian dalam assosiasi. Jumlah relasi diindikasikan
dengan dua nilai yaitu nilai minimum relasi dan maksimum. Dalam relasi class juga dikenal
istilah Navigability yang menjelaskan arah dari relasi. Notasi yang menunjukkan arah relasi
ini disimbolkan dengan tanda anak panah pada salah satu ujung garis relasi.
Tabel….ragam jenis nilai multiplicity relasi class
Relasi class- Link digunakan untuk merelasikan dua buah class secara spesifik dan
memiliki sifat-sifat khusus. Relasi ini merupakan relasi association yang sangat spesifik.
Pada relasi ini assosiation name ditulis dengan underline. Contoh dibawah ini digunakan
untuk merelasikan siapa yang bermain dalam suatu tim khusus.
Gambar ………
Gambar ………
Abstract class adalah class yang memiliki method kosong untuk didefinisikan oleh
user sendiri. Abstract class ini tidak bisa dibuat obyeknya karena ada method yang kosong.
Abstract class hanya dapat di turunkan (di-inherit-kan) ke subclass dan subclass tersebut
akan mendefinisikan method yang kosong tersebut. Dalam class diagram nama dari abstract
class di tulis dengan huruf miring atau dengan memberikan role / keyword “{abstract}” pada
class name-nya. Gambar berikut menjelaskan contoh abstrackt class dalam Basketball mode.
Player
{abstract}
- name : std::string
- height : int
- weight : int
- runningSpeed : int
Clock
- verticalLeap : int {abstract}
+ dribbleBall () : void
+ passBall () : void
+ rebound () : void + trackTime () : void
+ shoot () : void
Gambar ….. Port untuk merelasikan interface mouse dengan class computer
BAB IV
MENERAPKAN HASIL PEMODELAN KE DALAM
PENGEMBANGAN PROGRAM
4) bahasa tingkat tinggi. Bahasa komputer yang memakai instruksi berasal dari unsur
kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dan
sebagainya. Contoh yang termasuk dalam bahasa ini adalah bahasa pascal,
basic,cobol, fortran, Java dll
Berdasarkan fungsi dan basisnya bahasa pemrograman dibedakan menjadi empat yaitu :
1. Imperative, bahasa yang berbasiskan von Neumann Archittecture, diamana
memori yang sama digunakan untuk data dan memberikan instruksi kepada
program. Mayoritas computer modern menggunakan von Neumann Archittecture
sebagai basis nya.
2. Functional, bahasa yang berbasiskan fungsi matematika yang merupakan struktur
anggota dari suatu set yang disebut domain set sampai ke set yang lain yang
disebut range set.
3. Logic, bahasa yang berbasiskan logika yang formal yang mengekspresikan fakta
dan aturan – aturan yang berkaitan dengan suatu masalah pada sebuah domain.
4. Markup/programming hybrid, bahasa yang berbasiskan teks dan tags yang
berhubungan dengan dokumen elektronik, operating system, aplikasi dan
program.
Berdasarkan metode menerapkan atau mengimplementasikannya bahasa
pemrograman dibedakan menjadi tiga yaitu: 1) Compilation, 2) Pure Interpretation, 3)
Hybrid Implementation Systems.
Compilation, dengan metode ini compiler akan menerjemahkan suatu program
menjadi bahasa mesin, yang bisa menjadi suatu input untuk interpreter atau compiler yang
lain. Metode ini banyak dipakai oleh bahasa pemrograman untuk membuat aplikasi
komersial dan berskala besar. Compilation juga terbagi atas beberapa fase :
• Lexical analysis, perubahan karakter di dalam program sumber menjadi unit lexical.
• Syntax analysis, merubah unti lexical menjadi parse trees, yang merepresentasikan
struktur syntax dari suatu program.
• Semantics analysis, menghasilkan intermediate code.
• Code generation, merubah intermediate code menjadi kode yang dapat dimengerti
oleh mesin sehingga siap digunakan.
Pure Interpretation, dengan metode ini suatu program akan ditafsirkan oleh
interpreter. Metode ini tidak membutuhkan translasi dan lebih mudah untuk digunakan
karena error bisa ditemukan dengan cepat, akan tetapi memiliki waktu eksekusi yang lebih
lama dan memakan lebih banyak memori. Metode ini biasa digunakan pada program-
program kecil.
Kode bahasa C sifatnya adalah portable dan fleksible untuk semua jenis computer
Bahasa C hanya menyediakan sedikit kata-kata kunci, hanya terdapat 32 kata kunci
Bahasa C++
Bahasa pemrograman komputer C++ dikembangkan di Bell Labs (Bjarne
Stroustrup) pada awal tahun 1970-an,. Bahasa itu diturunkan dari bahasa sebelumnya,
yaitu BCL, Pada awalnya, bahasa tersebut dirancang sebagai bahasa pemrograman yang
dijalankan pada sistem Unix. Pada perkembangannya, versi ANSI (American National
Standart Institute) Bahasa pemrograman C menjadi versi dominan. Meskipun versi tersebut
sekarang jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem
embedded. Bjarne Stroustrup pada Bell labs pertama kali mengembangkan C++ pada awal
1980-an, Untuk mendukung fitur-fitur pada C++, dibangun efisiensi dan sistem support
untuk pemrograman tingkat rendah (low level coding).] Pada C++ ditambahkan konsep-
konsep baru seperti class dengan sifat-sifatnya seperti inheritance dan overloading. Salah
satu perbedaan yang paling mendasar dengan bahasa C adalah dukungan terhadap konsep
pemrograman berorientasi objek (Object Oriented Programming).
Kelebihan:
Merupakan induk dari bahasa pemrograman perl, php, phyton, visual basic, gambas,
java, C#
Compiler bahasa C++ terdapat di semua platform
Untuk pengembangan visual dijejali dengan platform yang sangat banyak seperti OWL,
MFC, Cocoa, QT, GTK, dll
Merupakan pemrograman berorientasi objek
Kekurangan:
Bahasa ini cukup sulit untuk dipel;ajari dan dipahami
Banyaknya operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai
Bagi pemula pada umumnya akan kesulitan menggunakan pointer
Bahasa Java
Java adalah sebuah teknologi yang diperkenalkan oleh Sun Microsystems pada
pertengahan tahun 1990. Menurut definisi dari Sun, Java adalah nama untuk sekumpulan
teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone
ataupun pada lingkungan jaringan. Kita lebih menyukai menyebut Java sebagai sebuah
teknologi dibanding hanya sebuah bahasa pemrograman. Teknologi Java memiliki tiga
komponen penting, yaitu :
1. Programming-language specification
2. Application-programming interface
3. Virtual-machine specification
Bahasa Java dapat dikategorikan sebagai sebuah bahasa pemrograman
berorientasi objek, pemrograman terdistribusi dan bahasa pemrograman multithrreaded .
Objek Java dispesifikasi dengan membentuk kelas. Untuk masing-masing kelas Java,
kompiler Java memproduksi sebuah file keluaran arsitektur netral yang akan jalan pada
berbagai implementasi dari Java Virtual Machine (JVM). Awalnya Java sangat digemari oleh
komunitas pemrograman internet, karena Java mendukung untuk applets , dimana
program dengan akses sumber daya terbatas yang jalan dalam sebuah web browser. Java
juga menyediakan dukungan level tinggi untuk networking dan objek terdistribusi. Java
juga dianggap sebagai sebuah bahasa yang aman. Tampilan ini pada khususnya penting
menganggap bahwa sebuah program Java boleh mengeksekusi silang sebuah jaringan
terdistribusi. Sehingga bahasa Java saat ini termasuk bahasa pemrograman yang relatif
mudah untuk dipelajari karena banyaknya contoh dan konsep yang beredar luas, baik
berupa buku maupun di internet. Tetapi program yang dibuat dalam bahasa Java juga
relatif lebih banyak membutuhkan waktu saat di eksekusi (lebih lama) dikarenakan untuk
menjalankan programnya dibutuhkan JVM (perantara antar program dan sistem operasi).
Kelebihan Bahasa Java:
Sederhana dan ampuh, java menyediakan sarana untuk membuat program (applet)
yang berjalan pada web browser. Programmer dapat menggunakan applet kecil yang
aman, dinamik, lintas platform, aktif dan siap dijalankan di jaringan.
Aman, java dirancang dengan konsep keamanan internet.
Berorientasi objek, java tidak diturunkan bahasa pemrogaman manapun. Java memiliki
keseimbangan yang menyediakan mekanisme peng-class-an sederhana dengan model
antarmuka dinamik yang intuitif hanya jika diperlukan.
Kokoh, java membatasi programmer dengan memberi kunci supaya progamer dapat
menemukan kesalahan lebih cepat saat mengembangkan program.
Interaktif, java dirancang untuk menciptakan program jaringan yang interaktif.
Netral terhadap berbagai arsitektur, java mampu berjalan dalam platform apapun
seperti PC, UNIX, Macintosh, dll.
Terinterpretasi dan berkinerja tinggi, java melengkapi keajaiban lintas platform yang
luar biasa dengan kompilasi ke dalam representasi langsung yang disebut java code
byte yang dapat diterjemahkan oleh system apapun yang memiliki java interpreter dan
java virtual machine.
Mudah dipelajari karena bersifat sederhana
Mendukung koneksi ke database
Kekurangan bahasa Java :
Java memiliki kecepatan yang kurang dari bahasa C ++
Implementasi J2ME tidak global. Misalnya, J2ME untuk Motorola dengan J2ME untuk
Sony Ericson tidak sama. Berbeda lagi J2ME untuk Nokia. Setiap produk selalu
mempunyai modul tersendiri yang dinilai aneh penerapannya dan harus di-compile
dengan modul yang berbeda-beda.
Java memakan banyak memori computer
Java merupakan bahasa yang kompleks.
Program yang dibuat oleh bahasa ini lebih lambat disbanding program yang dibuat
dengan bahasa lain seperti C atau C++.
Bahasa Pascal
Pascal adalah bahasa pemrograman yang pertama kali di buat oleh Profesor Niklaus
Wirth, seorang anggota International Federation of Information Processing (IFIP) pada
tahun 1971. Dengan mengambil nama dari matematikawan Perancis, Blaise Pascal, yang
pertama kali menciptakan mesin penghitung. Profesor Niklaus Wirth membuat bahasa
Pascal ini sebagai alat bantu untuk mengajarkan konsep pemrograman komputer kepada
mahasiswanya. Selain itu, Profesor Niklaus Wirth membuat Pascal juga untuk melengkapi
kekurangan-kekurangan bahasa pemrograman yang ada pada saat itu.
Kelebihan bahasa pascal :
Tipe data standar, tipe-tipe data standar yang telah tersedia bahasa pemrogaman.
Pascal memiliki tipe data standar Boolean, integer, char, real, string.
User defined data types, programmer dapat membuat tipe data lain yang diturunkan
dari tipe data standar.
Strongly-typed, programmer harus menentukan tipe data dari suatu variable dan
variable tersebut tidak dapat dipergunakan untuk menyimpan tipe data selain format
yang ditentukan.
Terstruktur, memiliki sintaks yang memungkinkan penulisan program dipecah menjadi
fungsi-fungsi kecil (procedur dan function) yang dapat dipergunakan berulang-ulang.
Sederhana dan ekspresif, memiliki struktur yang sederhana dan sangat mendekati
bahasa manusia (bahasa inggris) sehingga mudah dipelajari dan dipahami.
Kekurangan bahasa pascal :
Versi awal Pascal kurang cocok untuk aplikasi bisnis karena dukungan basisdata yang
terbatas.
Sintaks Pascal terlalu bertele-tele
Tidak mendukung pemrograman berorientasi objek
Pascal tidak fleksibel dan banyak kekurangan yang dibutuhkan untuk membuat aplikasi
yang besar.
Bahasa PHP
PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP pertama
kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama FI
(Form Interpreted), yang wujudnya berupa sekumpulan script yang digunakan untuk
mengolah data form dari web. PHP banyak dipakai untuk membuat situs web yang
dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain. PHP
biasanya berjalan pada sistem operasi linux (PHP juga bisa dijalankan dengan hosting
windows). PHP4 dengan versi-versi akhir menuju PHP5 sudah mendukung pemrograman
berorientasi objek. PHP merupakan bahasa pemrograman yang digunakan untuk
pemrograman web.
Kelebihan PHP:
PHP menjadi popular karena kesederhanaannya dan kemampuannya dalam
menghasilkan berbagai aplikasi web seperti counter, system artikel/ CMS, e-commerce,
bulletin board, dll
PHP adalah salah satu bahasa server-side yang didesain khusus untuk aplikasi web.
PHP termasuk dalam Open Source Product dan telah mencapai versi 4.
Aplikasi PHP cukup cepat dibandingkan dengan aplikasi CGI dengan Perl atau Phyton
bahkan lebih cepat disbanding dengan ASP maupun Java dalam berbagai aplikasi web
Tersedia baik di Windows maupun Linux, walau saat ini paling efektif di web server
Apache dan OS Linux
Sintaks mirip C dan mudah dipelajari
Komunitas yang ramai dan saling membantu, seperti di diskusiweb.com,
phpbuilder.com, phpindo.com, dll
Berbagai script atau aplikasi yang gratis telah tersedia.
Kekurangan :
Tidak detail untuk pengembangan skala besar
Tidak memiliki system pemrogaman berorientasi objek yang sesungguhnya
Tidak bisa memisahkan antara tampilan dengan logic dengan baik
PHP memiliki kelemahan security tertentu apabila programmer tidak jeli dalam
melakukan pemrogaman dan kurang memperhatikan isu konfigurasi PHP.
Kode PHP dapat dibaca semua orang, dan kompilasi hanya dapat dilakukan dengan tool
yang mahal dari Zend
Bahasa Phyton
Python adalah bahasa pemrograman interpretatif multiguna dengan filosofi perancangan
yang berfokus pada tingkat keterbacaan kode. Python diklaim sebagai bahasa yang
menggabungkan kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas,[11]
dan dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif.
Python juga didukung oleh komunitas yang besar. Python mendukung multi paradigma
pemrograman, utamanya; namun tidak dibatasi; pada pemrograman berorientasi objek,
pemrograman imperatif, dan pemrograman fungsional. Salah satu fitur yang tersedia pada
python adalah sebagai bahasa pemrograman dinamis yang dilengkapi dengan manajemen
memori otomatis. Seperti halnya pada bahasa pemrograman dinamis lainnya, python
umumnya digunakan sebagai bahasa skrip meski pada praktiknya penggunaan bahasa ini
lebih luas mencakup konteks pemanfaatan yang umumnya tidak dilakukan dengan
menggunakan bahasa skrip
Kelebihan :
Tidak ada tahapan kompilasi dan penyambungan (link) sehingga kecepatan perubahan
pada masa pembuatan system aplikasi meningkat.
Tidak ada deklarasi tipe sehingga program menjadi lebih sederhana, singkat, dan
fleksible.
Manajemen memori otomatis yaitu kumpulan sampah memori sehingga dapat
menghindari pencatatan kode
Tipe data dan operasi tingkat tinggi yaitu kecepatan pembuatan system aplikasi
menggunakan tipe objek yang telah ada
Pemrograman berorientasi objek
Pelekatan dan perluasan dalam C
Terdapat kelas, modul, eksepsi sehingga terdapat dukungan pemrograman skala besar
secara modular
Pemuatan dinamis modul C sehingga ekstensi menjadi sederhana dan berkas biner
yang kecil
Pemuatan kembali secara dinamis modul phyton seperti memodifikasi aplikasi tanpa
menghentikannya
Model objek universal kelas Satu
Konstruksi pada saat aplikasi berjalan
Interaktif, dinamis dan alamiah
Akses hingga informasi interpreter
Portabilitas secara luas seperti pemrograman antar platform tanpa ports
Kompilasi untuk portable kode byte sehingga kecepatan eksekusi bertambah dan
melindungi kode sumber
Antarmuka terpasang untuk pelayanan keluar seperti perangkat Bantu system, GUI,
persistence, database, dll
Kekurangan:
Beberapa penugasan terdapat diluar dari jangkauan python, seperti bahasa
pemrograman dinamis lainnya, python tidak secepat atau efisien sebagai statis, tidak
seperti bahasa pemrograman kompilasi seperti bahasa C.
Bahasa Ruby
Ruby adalah bahasa pemrograman dinamis berbasis skrip yang berorientasi obyek.
Tujuan dari ruby adalah menggabungkan kelebihan dari semua bahasa-bahasa
pemrograman skrip yang ada di dunia. Ruby ditulis dengan bahasa pemrograman C dengan
kemampuan dasar seperti Perl dan Python. Penulisan Ruby dimulai pada Februari 1993 dan
pada Desember 1994 dirilis versi alpha dari Ruby. Pada awal perkembangan Ruby, Yukihiro
menulis Ruby sendiri sampai pada tahun 1996 sudah terbentuk komunitas Ruby yang
banyak mengontribusikan perkembangan Ruby. Saat ini Ruby telah berkembang tidak
hanya di Jepang, tetapi diseluruh dunia. Bulan Agustus tahun 2006, Macintosh telah
melakukan kerja sama dengan mengintegrasikan Ruby on Rails pada Mac OS X v10.5
Leopard telah diluncurkan bulan Oktober 2007.
Kelebihan:
Sintaks sederhana
Memiliki Exception Handling yang baik
OOP
Single inheritance
Didukung oleh OS Linux, Windows, MacOS X, OS/2, BeOs, dan Unix.
Merupakan bahasa pemrograman scripting yang berorientasi objek
Memiliki garbage collector yang secara otomatis akan menghapus informasi tak
terpakai dari memori
Kelemahan :
Multithreading. Implementasi thread di ruby masih berupa green thread, bukan native
thread. Hal ini membuat aplikasi GUI (desktop) dengan background thread tidak
mungkin diimplementasikan di ruby.
Virtual Memory, ruby masih fully interpreted sehingga program ruby cenderung lebih
lambat.
Spek. saat ini spesifikasi ruby (syntax, behaviour, dll) adalah implementasi ruby yang
asli dari matz.
IDE. Saat ini kualitas IDE untuk ruby masih jauh daripada .net dan java. Tapi dengan
bermunculnya IDE ruby yang dibuat dengan java.net, kondisinya agak berubah. Tapi
karena ruby bahasa yang sangat dinamis, sulit untuk bisa mendapatkan informasi
secara lengkap mengenai struktur sebuah program ruby secara statis.
Bookmarking: fitur yang digunakan untuk menandai baris yang suatu saat hendak
kita modifikasi.
Go to commands: fitur yang digunakan untuk jump ke deklarasi variabel, source
code atau file yang ada pada project yang sama.
Code generator: jika kita menggunakan fitur ini kita dapat meng-generate
constructor, setter and getter method dan yang lainnya.
Error stripe: fitur yang akan menandai baris yang eror dengan memberi highlight
merah
5. Tab Source, design dan history : tab source untuk memasukkan kode program,
tab design untuk mendesign tampilan visual program, tab history berisi rekap
kegiatan yang dilakukan
DAFTAR PUSTAKA
A. BukuReferensi
a. Martin Fowler, UML Distiled Panduan Singkat Tentang Bahasa Pemodelan Objek
Standar, Penerbit Andi Yogyakarta, 2015
b. Roger S Pressman, Rekayasa Perangkat Lunak Pendekatan Praktis Edisi 7, Penerbit
Andi Yogyakarta, 2012
c. Adi Nogroho, Rekayasa perangkat Lunak menggunakan UML dan Java, Penerbit Andi
offset, Yogyakarata, 2009
B. Referensi Lainnya
a. Sri Dharwiyanti dan Romi Satria Wahono, Pengantar Unified Modeling Language (UML),
http://mfile.narotama.ac.id/files/Tubagus%20Purworusmiadi/Kumpulan%20File%20P
DF/MateriSuplemenUml-2.pdf
b. http://mr-fahmi.blogspot.co.id/2013/01/ragam-bahasa-pemrograman.html
c. http://ndutagen.blogspot.co.id/2012/03/artikel-bahasa-pemrograman.html
d. nnbv
A. Daftar Peralatan/Mesin
B. Daftar Bahan
DAFTAR PENYUSUN
1. Widyaiseara/Instruktur …
1. Abdul Munif, S.Pd.,S.St.,M.Kom 2. Asesor …
3. Anggota …