BAB 2 LANDAS AN TEORI 2.1
Rekayasa Perangkat Lunak Pada bagian ini akan dijabarkan mengenai pengertian perangkat lunak, pengertian rekayasa perangkat lunak, lapisan dalam RPL, dan model process software. a.
Pengertian Perangkat Lunak M enurut Sommerville (2001, p5), perangkat lunak tidak hanya berupa program tetapi juga semua dokumen yang saling berkaitan dan konfigurasi data yang dibutuhkan untuk menjalankan program dengan benar. (software is not just the program but also all associated document and configuration data which is needed to make these programs operates correctly). M enurut Pressman (2001, p6) perangkat lunak adalah : •
Beberapa instruksi dari program komputer yang jika dieksekusi akan menghasilkan fungsi dan kinerja yang diinginkan. (instructions of computer programs that when executed provide desired function and performance )
•
Kumpulan struktur data yang memungkinkan memanipulasi informasi secukupnya.
10
program untuk
11
(data structures tahet enable the programs to adequately manipulate information). •
Kumpulan dokumen yang menggambarkan operasi dan pengunaan program. (documents that describe the operation and use of the programs).
b.
Pengertian Rekayasa Perangkat Lunak M enurut Sommerville (2001, p6), rekayasa perangkat merupakan disiplin keahlian teknik yang prihatin dengan semua aspek dari pembuatan perangkat lunak dari tahap awal spesifikasi sistem untuk pengembangan sistem setelah mulai digunakan. ( software engineering an engineering discipline which is concerned with all aspect of software productions from the early stage of system specification to maintaining the syste after it has gone into use ). M enurut Pressman (2001, p20), rekayasa perangkat lunak adalah pendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk memperoleh perangkat lunak ekonomis yang handal dan bekerja secara efisien pada mesin yang sesungguhnya. (software engineering is the establishment and the use of sound engineering principles in order to obtain economically software that is reliable and works efficientlu on real machines).
12
c.
Model Process Software M enurut Cantor (1998, p89-92), proses model software terdiri dari empat jenis lifecycle models, yaitu waterfall model, spiral model, Controlled Iteration, incremental builds namun pada bab ini akan dijelaskan tentang waterfall model yang merupakan proses model yang digunakan pada pembuatan aplikasi. Waterffall Model Lifecycle pertama kali dikenalkan oleh Barry Boehm pada tahun 1970an yang terdiri dari delapan fase, yaitu : •
Feasibility M enentukan desain dan pendekatan dari pengembangan software.
•
Software Plans and Requirements Pengembangan spesifikasi dari kebutuhan software secara lengkap
•
Product Design Pengembangan spesifikasi dari arsitektur dan high-level design dari suatu software secara lengkap
•
Detailed Design Pengembangan spesifikasi dari desain yang terperinci secara lengkap (kontrol, struktur data).
•
Coding M elakukan proses coding dan pengujian dari masing-masing bagian.
•
Integration M enerjemahkan dan menghubungkan bagian-bagian dari software menjadi suatu kesatuan software.
13
•
Implementation M eng-install software pada sistem operasi yang akan digunakan.
•
Operational and Maintenance Pemeliharaan dan pengembangan software.
Tahapan proses dari Waterffall Model Lifecycle dapat pada gambar 2.1
Gambar 2.1 Waterfall Model Process
Project management aspek dari waterfall model sangat mendukung dalam pembuatan suatu project. Banyak para manager menggunakan proses model waterfall karena mudah dipahami. Tim menyelesaikan kegiatan
yang dibutuhkan
dalam tatanan
yang natural.
Dengan
memperhatikan kegiatan, maka kesalahan ditemukan diawal dan untuk
14
memperbaikinya juga membutuhkan biaya yang relative murah. Tujuannya sederhanya, yaitu untuk melengkapi kegiatan yang diperlukan. (it is easy to understand why manager adopted the waterfall model. Teams complete the required activities in a natural order. By paying attention to the activities, defects are found early, when they are relatively inexpensive to fix. The goal aqually simple : complete the required activities. The model, too, is easy to plan and staff. )
2.2
Database Pada bagian ini akan dijelaskan secara singkat mengenai pengertian database dan Normalisasi a.
Pengertian Database M enurut Connolly dan Begg (2002, p14), database adalah suatu kumpulan data logika yang berhubungan satu sama lain dan didesain dari sebuah informasi untuk memenuhi apa yang dibutuhkan dari suatu perusahaan. Database memiliki beberapa tujuan utama dari penggunaan konsep database antara lain : •
Mengurangi redundancy data Yaitu duplikasi dari data yang artinya adalah data yang sama disimpan berulang-ulng pada banyak file.
15
•
Meningkatkann independence data Yaitu kemampuan untuk mengubah struktur data tanpa harus mengubah aplikasi yang memproses data tersebut.
Database terdiri dari beberapa objek, antara lain : •
File suatu sarana yang bisa digunakan untuk menyimpan berbagai macam data, dengan memperhatikan faktor kemudahan dan keamanan dalam hal mencari kembali data yang bersangkutan
•
Field merupakan tempat di mana data atau informasi dalam kelompok yang sama atau sejenis dimasukkan. Field itu pada umumnya tersimpan dalam bentuk kolom vertikal pada tabel.
•
Record merupakan data lengkap dalam jumlah tunggal yang biasanya tersimpan dalam bentuk baris secara horizontal pada tabel.
•
Entity merupakan suatu objek nyata yang bisa dibedakan dengan objek lainnya.contoh entity adalah barang, penjual, pembeli
•
Attribute adalah menggambarkan data yang dapat memberikan informasi kelas atau objek dimana atribut tersebut berada.
•
Primary adalah suatu nilai dalam basis data yang digunakan untuk mengidentifikasi suatu baris dalam tabel yang bersifat unik.
•
Foreign Key boleh disebut sebagai kunci tamu. Foreign key adalah Primary key dari suatu table yang berelasi dengan tabel lain.
16
b.
Normalisasi M enurut Connolly (2002, p386), normalisasi adalah sebuah teknik formal
untuk
menganalisi
relasi
berdasarkan
primary
key
dan
ketergantungan fungsional. Teknik tersebut mencakup serangkaian aturan yang dapat digunakan untuk menguji relasi individual, sehingga sebuah basis data dapat dinormalisasi pada derajat tertentu. Ketika syarat tidak terpenuhi, relasi yang tidak sesuai syarat harus diuraikan ke dalam relasi yang secara individu memenuhi syarat-syarat normalisasi. Tujuan dari proses normalisasi adalah untuk menghilangkan redudansi data, yaitu penyimpanan data yang sama dibeberapa tabel dan memastikan ketergantungan data yang ada sudah benar, yang artinya hanya menyimpan data yang berhubugan ke dalam sebuah tabel.
2.3
Interaksi Manusia dan Komputer (IMK) Interaksi manusia dan komputer adalah disiplin ilmu yang behubungan dengan perancangan, evaluasi dan implementasi sistem komputer interaktif untuk digunakan oleh manusia, serta studi fenomena-fenomena besar yang behubungan dengannya. Ilmu ini menitikberatkan pada perancangan dan evaluasi antarmuka pemakai (user interface) 2.3.1
Pengertian Interaksi Manusia dan Komputer M enurut Schneiderman (2005, p4), interaksi manusia dan komputer
merupakan disiplin ilmu yang berhubungan dengan perancangan, evaluasi dan
17
implementasi sistem komputer interaktif yang digunakan oleh manusia, serta studi fenomena-fenomena yang berhubungan dengannya.
2.3.2
Delapan Aturan Emas pada Perancangan Antar Muka M enurut Schneiderman (1998, p74-75), ada delapan aturan
(Eight
Golden Rules) perancangan antar muka yang harus diperhatikan dalam perancangan dialog yaitu antara lain : •
Berusaha Untuk Konsisten Pada urutan yang sama memerlukan urutan aksi yang konsisten. Konsistensi juga harus digunakan pada prompt, menu, layar bantu, warna, tampilan layar, kapitalisasi, huruf dan sebagainya.
•
Memungkinkan Frequent Users menggunakan Shortcuts Pengguna yang sering menggunakan aplikasi sering menginginkan kecepatan dalam mengakses fungsi-fungsi yang diingkannya. Sehingga penyediaan tombol-tombol fungsi penyingkat dapat memudahkan
pengguna
berinteraksi
dengan
fungsi
yang
digunakannya. •
Memberikan Umpan Balik yang Informatif Untuk memberikan umpan balik kepada pengguna sesuai dengan aksi yang diingikan, maka umpan balik harus diberikan dalam pemberian informasi. Informasi dapat berupa konfirmasi atau informasi atau suatu aksi.
18
•
Merancang Dialog yang memberikan penutupan (keadaan akhir) Umpan balik pada akhir dari suatu proses dan aksi akan sangat membantu, dan pengguna juga mendapat sinyal untuk melanjutkan aksi lainnya.
•
Memberikan
Pencegahan
Kesalahan
dan
Penanganan
Kesalahan yang Sederhana Perancangan sistem sedemikian rupa sehingga dapat mencegah pengguna dalam membuat suatu kesalahan. Bila terjadi suatu kesalahan, maka sistem harus dapat memberikan instruksi sederhana, konstruktif, dan spesifik untuk perbaikan. •
Memungkinkan Pembalikan Aksi yang Mudah Pengguna terkadang sering tidak sengaja melakukan aksi yag membuat suatu kesalahan yang tidak diinginkan, untuk itu pengguna ingin melakukan pembatalan. Sistem harus dapat memberikan fungsi pembatalan ini, sehingga pengguna meras a lebih aman dan tidak takut dalam mencoba dan menggunakan sistem tersebut.
•
Mendukung Interal Locus of Control Pengguna yang sudah berpengalaman sangat menginginkan kontrol yang kuat pada sistem sehingga pengguna meras a menguasai sistem tersebut. Sistem yang tidak terduga dan sulit dalam melakukan aksi akan menyulitkan penggu
na.
19
•
Mengurangi Beban Ingatan Jangka Pendek Keterbatasan memori pada manusia harus mampu diatasi oleh sistem sehingga tidak banyak membuat pengguna melakukan proses penyimpangan memori.
2.4
Object Oriented Programming Concepts Object Oriented Programming atau Pemrograman berorientasi objek sudah menjadi common sense dalam dunia programming yang merupakan suatu cara baru dalam berfikir dan berlogika dalam menghadapi masalah masalah yang dihadapi dalam membuat suatu program. Dalam dunia pemrograman berorientasi objek terdapat sebuah istilah UM L yang sudah terkenal. M enurut Schmuller (1999, p5), UM L (Unified Modelling Language) merupakan salah satu alat yang penting dalam dunia pengembangan sistem saat ini. dengan UM L memungkinkan pembangunan sistem untuk menciptakan “blue print” yang menangkap visi besar menerak pada suatu standart, mudah untuk memahami cara dan berkomunikasi ke lainnya. (is one of the most exiting tools in the world of system development today. the UML enables system builders to create blueprints that captures their visions ia a standart, easy to understand way and communicate them to other). UM L dikembangkan pertama kali pada pertengahan tahun 1990an yang merupakan hasil kerjasama antara James Rumbaugh, Grady Booch dan Ivar Jacobson, yang masing-masing telah mengembangkan notasi mereka sendiri diawal tahun 1990-an.
20
UM L terdiri dari beberapa tipe diagram, antara lain : a.
Class Diagram M enurut schmuller (1998, p8) kelas adalah sebuah kategori atau pengelompokkan dari hal-hal yang mempunyai atribut dan fungsi yang sama. (a class is a category or group of things that have similar ttributes and common behaviors). M enurut Rumbaugh et. al. (1999, p190) class diagram adalah
sebuah
grafik
presentasi dari gambaran statis yang
menunjukkan sekumpulan model elemen yang terdeklarasi (statis), seperti kelas, tipe dan isinya serta hubungannya. (a class diagram is a graphic presentation of the static view that shows a collection of declarative (static) model elements, such as a classes, types and their contents and relationships). Sebuah kelas diagram terdiri dari sejumlah kelas yang dihubungkan dengan garis yag menunjukkan hubungan antar kelas, seperti ditunjukkan pada gambar 2.2
Gambar 2.2 Class Diagram
21
b.
Object Diagram M enurut Schmuller (1999, p9), objek adalah instance dari sebuah kelas, sesuatu yang mempunyai nilai atribut dan fungsi yang spesifik (object is an istance of a class a specific thing that has specific values of the attributes and behavior.) M enurut Schmuller (1999, p120) sebuah object diagram menunjukkan objek-objek dan hubungannya satu sama lain, seperti ditunjukkan pada gambar 2.3
Gambar 2. 3 Object Diagram
c.
Use Case Diagram M enurut Schmuller (1999, p10), use case adalah sebuah gambaran dari fungsi sistem yang dipandang dari sudut pandang pemakai. (a use case is a description of a system’s behavior from a user’s standpoint). Contoh use case dapat dilihat pada gambar 2.4
22
Gambar 2.4 Use Case Diagram
d.
State Diagram M enurut Schmuller (1999, p276), state diagram merupakan cara lain untuk mengekspresikan informasi dinamis tentang sebuah sistem, diagram ini digunakan untuk menggambarkan fungsi eksternal yang terlihat dari sebuah sistem atau objek secara individu. (a state diagram is a another way of expressing dynamic information of a system or of an individual object). Contoh statechart diagram dapat dilihat pada gambar 2.5
23
Gambar 2.5 State Diagram
e.
Sequence Diagram M enurut Schmuller (1999, p11), sebuah sequence diagram menunjukkan urutan dari pertukan pesan yang dilakukan oleh sekumpulah objek atau actor yang mengerjakan pekerjaan tertentu. (a sequenc diagram shows the sequence of messages exchanged by set of objects (and optionally an actor) performing a
24
certain task). Contoh dari sequence diagram ditunjukkan pada gambar 2.6
Gambar 2.6 Sequence Diagram
f.
Activity Diagram M enurut Schmuller (1999, p12), sebuah activity diagram digunakan untuk mengetahui aliran kerja yang dilakukan oleh sebuah objek atau komponen.
25
(an activity diagram is used to understand the flow of work that an object or component perform). Contoh dari activity diagram ditunjukkan pada gambar 2.7
Gambar 2.7 Activity Diagram
g.
Collaboration diagram M enurut Schmuller (1999, p13), sebuah collaboration diagram menunjukkan beberapa obek yang bekerja bersama. Diagram ini merupakan grafik dengan sekumpulan objek dan actor sebagai pusatnya. (a collaboration diagram shows several objects working together. It appears as a graph with a set of objects and actors as the vertices). Contoh dari collaboration diagram ditunjukkan pada gambar 2.8
26
Gambar 2.8 Collaboration Diagram
h.
Component Diagram M enurut
Schmuller
(1999
p13), component diagram
menggambarkan kumpulan dari komponen-komponen dan hubungan antar komponen tersebut. Component diagram juga digunakan untuk menggambarkan implementasi statis dari suatu sistem. M enurut Booch (2005) contoh dari component diagram dapat dilihat pada gambar 2.9
27
Gambar 2.9 Component Diagram
i.
Deployment Diagram M enurut
Schmuller
(1999,
p14),
sebuah deployement
diagram menunjukkan arsitektur fisik dari sistem berbasis komputer. (the UML deployment diagrams shows the physical architecture of a computer-based system). M enurut Booch (2005) contoh dari deployment diagram ditunjukkan pada gambar 2.10
Gambar 2.10 Deployment Diagram
28
2.5
WEBSITE M enurut (Anonymous), website adalah sebuah cara untuk menampilkan diri di internet. Dapat diibaratkan website adalah sebuah tempat di internet, siapa saja di dunia ini dapat mengunjunginya, dapat mencari apa yang dibutuhkan, dapat memberi pertanyaan kepada pembuat website, dan memberikan masukan atau bahkan membeli produk yang di jual melalui media internet. Pengguna internet semakin hari semakin bertambah banyak, sehingga hal ini adalah potensi pasar yang berkembang terus. Semua orang menggunakan web untuk segala sesuatu mulai dari pekerjaan sekolah sampai dengan memesan makanan karena prosesnya yang cepat, murah, mudah & menyenangkan. Pada saat ini orang lebih suka mencari informasi tentang suatu produk melalui internet sebelum mengunjungi toko tersebut. Banyak sekali kegunaan atau fungsi dari sebuah website, antara lain : •
M embuat pengumuman atau pemberitahuan.
•
M emberikan pelayanan kepada customer.
•
M enerima masukan dari pengunjung/customer.
•
M embagi dan mendistribusi file dan foto.
•
Berkomunikasi langsung dengan customer yang berada di belahan dunia manapun.
2.5.1
Internet Pada bagian ini akan dijelaskan mengenai pengertian internet, intranet
dan layanan yang disediakan oleh internet
29
a.
Pengertian Internet M enurut (Anonymous, 1996), internet merupakan jaringan besar yang melibatkan
banyak orang, informasi, komputer dan
sudah mendunia. Komputer yang dahulunya masih stand alone kini dapat berhubungan dengan satu atau banyak komputer lainnya. Internet sebagai jaringan yang terhubung dengan Internet protocol (IP) akan membentuk suatu jaringan fisik dan jaringan nyata yang disebut dengan inter-network. Internet
merupakan
komunitas jaringan komputer yang dapat memberikan layanan WWW (World Wide Web) yang tidak terbatas, sehingga tercipta suatu komunitas global dari orang-orang ingin saling berbagi informasi yang dapat diakses oleh siapa saja yang membutuhkan. b.
Pengertian Intranet M enurut (Anonymous, 2001a), intranet merupakan suatu jaringan internal perusahaan atau organisasi yang menggunakan teknologi jaringan internet yang memungkinkan untuk membuka situs melalui internet(browsing) dan berbagi informasi menjadi lebih mudah. Sebuah intranet adalah versi eksklusif dari internet dan WWW yang hanya digunakan oleh orang-orang tertentu didalam organisasi atau perusahaan tersebut. Informasi yang terkandung dalam intranet hanya dapat diakses oleh pengguna yang berada dalam lingkungan intranet
30
ataupun pengguna dari luar yang diberikan hak akses yang biasanya berupa Local Area Network (LAN) yang dilindungi oleh Firewall. Penerapan teknologi intranet pada suatu organisasi atau perusahaan diharapkan dapat meningkatkan efisiensi dan efektifitas dari organisasi atau perusahaan tersebut. Dengan hal tersebut diharapkan akan member nilai tambah bagi organisasi atau perusahaan serta menambah daya saing dengan memanfaatkan fasilitas dan distribusi yang ada. c.
Layanan yang Disediakan oleh Internet Pada bagian ini akan dijelaskan beberapa layanan yang disediakan oleh internet yaitu antara lain : •
Electronic Mail (e-mail) M enurut Turban, et al (2003, p208), email adalah sebuah aplikasi yang dapat mengirimkan sebuah pesan elektronik antar individu melalui kabel telepon atau jaringan wireless. (e-mail is an application that allows that electronic message to be send between individuals through telephone wires or wireless networks)
•
US ENET Newsgroups (Forums) M enurut Turban, et al (2003, p209), USENET adalah sebuah protocol yang menggambarkan bagaimana suatu kumpulan pesan dapat disimpan dan dikirim antar komputer.
31
(USENET is a protocol that delineates how groups of messages can be stored on and sent between computers). •
Chatting M enurut Turban, et al (2003, p210), chatting merupakan layanan internet yang memungkinkan dua orang atau lebih terkoneksi ke internet untuk membuat suatu percakapan secara life (real-time), interaktif atau tertulis dalam waktu yang bersamaan.
•
Instant Messaging M enurut Turban, et al (2003, p210), instrant messaging merupakan percakapan online yang real-time antar dua orang atau lebih yang terhubung dengan internet.
2.5.2
E-commerce M enurut Turban (2004, p3), Electronic Commerce (ECommerce) merupakan proses pembelian, penjualan, pengiriman atau pertukaran produk, jasa dan / atau informasi melalui jaringan komputer, termasuk internet. E-commerce dapat didefinisikan dari perspektif berikut : •
Communications dari perspektif komunikasi, e-commerce adalah
pengiriman
barang,
jasa,
informasi,
atau
pembayaran melalui jaringan komputer atau dengan cara elektronik lainnya.
32
•
Commercial (trading) dari sudut pandang komersial, ecommerce menyediakan kemampuan membeli dan menjual produk, layanan, dan informasi di internet dan melalui layanan online lainnya.
•
Business process dari perspektif proses bisnis, e-commerce adalah
melakukan
bisnis
secara
elektronik
dengan
menyelesaikan proses bisnis melalui jaringan elektronik, sehingga mengganti informasi untuk bisnis proses fisik. •
Service dari perspektif layanan, e-commerce adalah alat yang membahas keinginan Pemerintahnya, perusahaan, konsumen, dan manajemen untuk memangkas biaya layanan
sementara
meningkatkan
kualitas
layanan
pelanggan dan meningkatkan kecepatan pelayanan. •
Learning dari perspektif pembelajaran, e-commerce adalah mengaktifkan pelatihan online dan pendidikan di sekolahsekolah, universitas dan organisasi lainnya, termasuk bisnis.
•
Collaborative dari perspektif collaboratives, e-commerce adalah
kerangka
untuk
antar
sebuah
kolaborasi
intraorganizational. •
Community dari
perspektif
komunitas, e-commerce
menyediakan tempat berkumpul bagi anggota masyarakat untuk belajar, bertransaksi, dan berkolaborasi.
33
2.5.3
Aplikasi Berbasis Web M enurut (Anonymous, 2010 ), jika dulu aplikasi hanya bisa dijalankan di desktop, maka sekarang telah lahir aplikas i jenis baru yang dinamakan aplikasi berbasis web. Secara sederhana, aplikasi berbasis web adalah aplikas i yang dijalankan melalui web browser. Aplikasi berbasis web cukup sekali di install pada web server dan dapat diakses dari manapun, selama terdapat koneksi ke server (menggunakan intranet atau internet). Sedangkan aplikasi desktop, untuk menggunakannya user harus meng-install aplikasi terlebih dahulu pada tiap komputer yang akan digunakan. Selengkapnya,
keunggulan
menggunakan
aplikas i
berbasis beb antara lain: •
Platform Independent: artinya aplikasi ini dapat dijalankan dari sistem operasi windows, linux, BSD, M ac.
•
Untuk dijalankan di banyak komputer, tanpa harus menginstall aplikasi disetiap komputer, cukup kopi aja script programnya ke server atau salah satu komputer. Untuk komputer lain yang ingin menjalankan program ini cukup buka browser dan membuka alamat host server dimana program ini disimpan.
34
•
Aplikasi ini dapat dijalankan dari jarak jauh dengan menggunakan internet.
•
Aplikasi dapat dijalankan menggunakan PDA/Smartphone yang telah menggunakan browser canggih. Aplikasi berbasis web ini dibuat dengan menggunakan
program server side, contohnya ASP, JSP, PHP, dan bahas a lainnya. Adapun konfigurasi web dapat dilihat pada gambar 2.11
Clien t
Clie nt
C lient
Internet
Se rver
Gambar 2.11 Konfigurasi Aplikasi Berbasis Web
35
2.5.4
Bahasa Pemrograman Bahasa pemrograman yang akan digunakan dalam pembuatan
sistem ini yaitu Java, M ongoDB dan JavaScript a.
Java M enurut dikategorikan
(Anonymus), sebagai
sebuah
bahasa
java
dapat
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 tingkat 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.
36
b.
Framework
M enurut (Fahri, 2008), framework terjemahan mudahnya adalah kerangka kerja, sedangkan dalam dunia pemrograman framework adalah bentuk kumpulan perintah suatu bahasa pemrograman yang telah diatur sedemikian rupa menjadi beberapa modul-modul untuk mempermudah pemrograman. Berbeda dengan CM S (content management system), framework bisa dibilang adalah komponen setengah matang yang memang disiapkan agar bisa digunakan untuk membentuk kerangka pemrograman secara lebih mudah. Sedangkan CM S atau templating, biasanya
telah
menyediakan
layout
dan
tampilan
administrasi secara lengkap dan siap pakai
Bisa dikatakan framework
adalah
komponen
pemrorgaman yang siap reuse kapan saja, sehingga programmer tidak harus membuat skrip yang sama untuk tugas yang sama. M isalkan saat anda membuat aplikasi web berbasis ajax yang setiap kali harus melakukan XMLHttpRequest, maka Xajax telah mempermudahnya untuk anda dengan menciptakan sebuah objek khusus yang siap digunakan untuk operasi Ajax berbasis PHP. Itu
37
adalah salah satu contoh kecil, selebihnya framework jauh lebih luas dari itu.
c.
Play Framework M enurut
(Anonymous), yang
play
pengembangan
web
lebih
mengembangkan
aplikasi web. Play
merupakan cepat
untuk
juga merupakan
sebuah kerangka kerja yang sangat baik digunakan untuk membuat aplikasi. Sangat banyak fitur yang tersedia pada play yang bisa dibandingkan dengan Angkat , yang juga merupakan kerangka kerja terbaru untuk Scala di JVM .
Kelebihan: 1. M erupakan salah satu framework pada Java (JVM ) 2. Bertujuan untuk memudahkan programmer dan pengembang dalam membuat aplikasi 3. Fast turnaround, otomatis reload class java, template dll, yang merupakan salah satu keluhan utama yg dimiliki dengan java. 4. M emiliki tampilan default yang sudah cukup baik.
38
5. Dunia pengembang berorientasi nyata, contoh kesalahan ditampilkan dalam cara yang baik dengan kode yang sesuai pada browser. Contoh tampilah error pada java dengan menggunakan play framework yang di tampilkan pada browser ditunjukkan pada gambar 2.12
Gambar 2.12 Contoh Tampilan Error pada Browser
6. Tersedia modul menarik. Lebih berorientasi nyata dari java klasik. 7. Tidak perlu menulis getter dan setter, mereka secara otomatis ditambahkan. 8. Berdasarkan JPA 9. M engintegrasikan Unit, Fungsional dan Selenium (sering aceptance tes) tes dalam satu halaman web. gaya
pengujian
yang
berbeda
dapat
39
digunakan , misalnya JUnit dengan menegaskan, JUnit dengan seharusnya. Kekurangan : 1.
M asih belum populer dikalangan awam.
2.
Belum memiliki komunitas yang besar, modul terbatas.
3.
M asih belum memiliki default standart yang lebih colourfull. Secara keseluruhan merupakan play framework
merupakan hal baru yang menarik, yang membawa ide-ide baru ke dalam dunia pemrograman berbasis web.
d.
MongoDB M enurut (Anonymous, 2010), M ongoDB berasal dari kata “humongous” adalah sebuah Document-Oriented Database Open Source. mongoDB merupakan salah satu database noSQL. noSQL ialah singkatan dari Not Only SQL, istilah sistem manajemen yang berbeda dari sistem manajemen database relasional dalam beberpa cara. Penyimpanan data tanpa perlu adanya tabel schema, tidak ada bahasa sql yang terlibat dalam pemakaian database. M ongoDB tidak mengenal tabel, kolom dan baris jadi tidak ada schema dalam M ongoDB (schema-less). unit
40
paling kecil dari M ongoDB adalah docummen, sedangkan kumpulan dari documen adalah collection. seperti halnya dalam database relasional, documen itu ibarat record dan collection sebuah tabel. Docummen dalam M ongoDB dapat memiliki atribut yang berbeda-beda dengan documen yang lainnya walaupun dalam satu collection. Aplikasi utama pada M ongoDB ada dua yaitu : •
mongod.exe adalah aplikasi daemon database server
•
mongo.exe adalah aplikasi shell untuk administrasi dan manajemen database
Untuk menjalan database M ongoDB bisa langsung dari explorer atau dari CM D window. Contoh cara menjalankan M ongDB melalui CM D window yaitu :
C:\> cd \mongodb\bin
C:\mongodb\bin > mongod
Database M ongoDB sudah berjalan dengan por t default 27017. Aplikasi database server M ongoDB aktif ditunjukkan pada gambar 2.13:
41
Gambar 2.13 Tampilan Aplikasi Database Server M ongoDB Aktif
Cara menjalankan shell administrasi database bisa dengan dobel klik pada mongo.exe di explorer atau melalui CMD window. Secara deafult mongo.exe akan terhubung ke mongod server yang berjalan pada localhost dan menggunakan database dengan
nama test. Contoh
tampilan shell yang sudah terhubung ditunjukkan pada gambar 2.14
Gambar 2.14 Tampilan Shell yang Sudah Terhubung
42
Pada M ongoDB, otomatis akan membuat collection pada saat pertama kali document di buat. Pada gambar 2.14 terlihat membuat document yang berisi atribut ‘kolom’ yang berisi ‘isi kolom’ pada collection ‘coba’.