BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF...

33
10 BAB 2 LANDASAN 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 Menurut 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). Menurut 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 program untuk memanipulasi informasi secukupnya.

Transcript of BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF...

Page 1: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

10 

 

BAB 2

LANDASAN 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

Menurut 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).

Menurut 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 program untuk

memanipulasi informasi secukupnya.

Page 2: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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

Menurut 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 ).

Menurut 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).

Page 3: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

12 

 

c. Model Process Software

Menurut 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

Menentukan 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

Melakukan proses coding dan pengujian dari masing-masing bagian.

• Integration

Menerjemahkan dan menghubungkan bagian-bagian dari software

menjadi suatu kesatuan software.

Page 4: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

13 

 

• Implementation

Meng-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

Page 5: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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

Menurut 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.

Page 6: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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.

Page 7: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

16 

 

b. Normalisasi

Menurut 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

Menurut Schneiderman (2005, p4), interaksi manusia dan komputer

merupakan disiplin ilmu yang berhubungan dengan perancangan, evaluasi dan

Page 8: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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

Menurut 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.

Page 9: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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 merasa

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 merasa

menguasai sistem tersebut. Sistem yang tidak terduga dan sulit

dalam melakukan aksi akan menyulitkan penggu na.

Page 10: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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 UML yang sudah terkenal.

Menurut Schmuller (1999, p5), UML (Unified Modelling Language)

merupakan salah satu alat yang penting dalam dunia pengembangan sistem saat

ini. dengan UML 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).

UML 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.

Page 11: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

20 

 

UML terdiri dari beberapa tipe diagram, antara lain :

a. Class Diagram

Menurut 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).

Menurut 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

Page 12: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

21 

 

b. Object Diagram

Menurut 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.)

Menurut 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

Menurut 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

Page 13: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

22 

 

Gambar 2.4 Use Case Diagram

d. State Diagram

Menurut 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

Page 14: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

23 

 

Gambar 2.5 State Diagram

e. Sequence Diagram

Menurut 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

Page 15: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

24 

 

certain task). Contoh dari sequence diagram ditunjukkan pada

gambar 2.6

Gambar 2.6 Sequence Diagram

f. Activity Diagram

Menurut Schmuller (1999, p12), sebuah activity diagram

digunakan untuk mengetahui aliran kerja yang dilakukan oleh sebuah

objek atau komponen.

Page 16: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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

Menurut 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

Page 17: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

26 

 

Gambar 2.8 Collaboration Diagram

h. Component Diagram

Menurut 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.

Menurut Booch (2005) contoh dari component diagram dapat

dilihat pada gambar 2.9

Page 18: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

27 

 

Gambar 2.9 Component Diagram

i. Deployment Diagram

Menurut 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). Menurut Booch (2005) contoh dari

deployment diagram ditunjukkan pada gambar 2.10

Gambar 2.10 Deployment Diagram

Page 19: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

28 

 

2.5 WEBSITE

Menurut (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 :

• Membuat pengumuman atau pemberitahuan.

• Memberikan pelayanan kepada customer.

• Menerima masukan dari pengunjung/customer.

• Membagi 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

Page 20: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

29 

 

a. Pengertian Internet

Menurut (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

Menurut (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

Page 21: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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)

Menurut 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)

• USENET Newsgroups (Forums)

Menurut Turban, et al (2003, p209), USENET adalah sebuah

protocol yang menggambarkan bagaimana suatu kumpulan

pesan dapat disimpan dan dikirim antar komputer.

Page 22: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

31 

 

(USENET is a protocol that delineates how groups of

messages can be stored on and sent between computers).

• Chatting

Menurut 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

Menurut 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

Menurut Turban (2004, p3), Electronic Commerce (E-

Commerce) 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.

Page 23: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

32 

 

• Commercial (trading) dari sudut pandang komersial, e-

commerce 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 sekolah-

sekolah, 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.

Page 24: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

33 

 

2.5.3 Aplikasi Berbasis Web

Menurut (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, Mac.

• Untuk dijalankan di banyak komputer, tanpa harus meng-

install 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.

Page 25: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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 bahasa

lainnya. Adapun konfigurasi web dapat dilihat pada gambar 2.11

Internet

Se rver

Clien t C lientClie nt

Gambar 2.11 Konfigurasi Aplikasi Berbasis Web

Page 26: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

35 

 

2.5.4 Bahasa Pemrograman

Bahasa pemrograman yang akan digunakan dalam pembuatan

sistem ini yaitu Java, MongoDB dan JavaScript

a. Java

Menurut (Anonymus), 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 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.

Page 27: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

36 

 

b. Framework

Menurut (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 CMS (content management

system), framework bisa dibilang adalah komponen

setengah matang yang memang disiapkan agar bisa

digunakan untuk membentuk kerangka pemrograman

secara lebih mudah. Sedangkan CMS 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. Misalkan 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

Page 28: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

37 

 

adalah salah satu contoh kecil, selebihnya framework jauh

lebih luas dari itu.

c. Play Framework

Menurut (Anonymous), play merupakan

pengembangan web yang lebih cepat untuk

mengembangkan aplikasi web. Play 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. Merupakan 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. Memiliki tampilan default yang sudah cukup baik.

Page 29: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

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. Mengintegrasikan Unit, Fungsional dan Selenium

(sering aceptance tes) tes dalam satu halaman

web. gaya pengujian yang berbeda dapat

Page 30: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

39 

 

digunakan , misalnya JUnit dengan menegaskan,

JUnit dengan seharusnya.

Kekurangan :

1. Masih belum populer dikalangan awam.

2. Belum memiliki komunitas yang besar, modul

terbatas.

3. Masih 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

Menurut (Anonymous, 2010), MongoDB 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.

MongoDB tidak mengenal tabel, kolom dan baris

jadi tidak ada schema dalam MongoDB (schema-less). unit

Page 31: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

40 

 

paling kecil dari MongoDB adalah docummen, sedangkan

kumpulan dari documen adalah collection. seperti halnya

dalam database relasional, documen itu ibarat record dan

collection sebuah tabel. Docummen dalam MongoDB

dapat memiliki atribut yang berbeda-beda dengan documen

yang lainnya walaupun dalam satu collection.

Aplikasi utama pada MongoDB ada dua yaitu :

• mongod.exe adalah aplikasi daemon database server

• mongo.exe adalah aplikasi shell untuk administrasi dan

manajemen database

Untuk menjalan database MongoDB bisa langsung

dari explorer atau dari CMD window. Contoh cara

menjalankan MongDB melalui CMD window yaitu :

C:\> cd \mongodb\bin

C:\mongodb\bin > mongod

Database MongoDB sudah berjalan dengan por t

default 27017. Aplikasi database server MongoDB aktif

ditunjukkan pada gambar 2.13:

Page 32: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

41 

 

Gambar 2.13 Tampilan Aplikasi Database Server MongoDB 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

Page 33: BAB 2 LANDASAN TEORI 2.1 Rekayasa Perangkat Lunakthesis.binus.ac.id/Doc/Bab2/2011-1-00272-IF 2.pdfpendirian dan penggunaan dalam prinsip-prinsip keahlian teknik untuk ... 2.2 Database

42 

 

Pada MongoDB, 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’.