Draft Skripsi

28
FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT 1 BAB I PENDAHULUAN 1.1 Latar Belakang Teknologi informasi telah membawa manusia untuk mengetahui teknologi yang semakin hari mengalami peningkatan. Teknologi internet berupa web, telah memungkinkan dilakukannya komunikasi dan layanan informasi secara mudah dan efisien. Salah satunya dalam bidang pendidikan, teknologi informasi telah dimanfaatkan untuk menunjang layanan administrasi, proses pembelajaran, pendaftaran ulang, perpustakaan, akses nilai, pencarian referensi secara cepat dan mudah, proses penelitian, pembayaran SPP, bahkan untuk seleksi penerimaan mahasiswa baru (PT.TELEKOMUNIKASI INDONESIA, 2011). “Univeritas Klabat adalah pusat pendidikan tinggi yang didirikan oleh Gereja Masehi Advent Hari Ketujuh untuk menyediakan mahasiswa bagi pelayanan di Indonesia dan tempat lainnya. Universitas ini didirikan pada tahun 1965 dengan nama Perguruan Tinggi Klabat dan saat ini berubah status dengan nama Universitas Klabat berusaha menyediakan pendidikan Kristen yang bermutu dalam tradisi Gereja Masehi Advent Hari Ketujuh. Tradisi ini bertujuan untuk mengembangkan keseluruhan potensi insani di dalam diri para mahasiswa dan menghentarkan mereka pada keserasian dengan sang Pencipta dan sesama manusia. Tugas istimewa universitas ini adalah untuk menyediakan mahasiswa berpartisipasi pada misi unik gereja kepada

Transcript of Draft Skripsi

Page 1: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Teknologi informasi telah membawa manusia untuk mengetahui teknologi

yang semakin hari mengalami peningkatan. Teknologi internet berupa web, telah

memungkinkan dilakukannya komunikasi dan layanan informasi secara mudah dan

efisien. Salah satunya dalam bidang pendidikan, teknologi informasi telah

dimanfaatkan untuk menunjang layanan administrasi, proses pembelajaran,

pendaftaran ulang, perpustakaan, akses nilai, pencarian referensi secara cepat dan

mudah, proses penelitian, pembayaran SPP, bahkan untuk seleksi penerimaan

mahasiswa baru (PT.TELEKOMUNIKASI INDONESIA, 2011).

“Univeritas Klabat adalah pusat pendidikan tinggi yang didirikan oleh Gereja

Masehi Advent Hari Ketujuh untuk menyediakan mahasiswa bagi pelayanan di

Indonesia dan tempat lainnya. Universitas ini didirikan pada tahun 1965 dengan nama

Perguruan Tinggi Klabat dan saat ini berubah status dengan nama Universitas Klabat

berusaha menyediakan pendidikan Kristen yang bermutu dalam tradisi Gereja Masehi

Advent Hari Ketujuh. Tradisi ini bertujuan untuk mengembangkan keseluruhan

potensi insani di dalam diri para mahasiswa dan menghentarkan mereka pada

keserasian dengan sang Pencipta dan sesama manusia. Tugas istimewa universitas ini

adalah untuk menyediakan mahasiswa berpartisipasi pada misi unik gereja kepada

Page 2: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

2

dunia, berpikir mandiri, kreatif dan analitis dalam konteks budaya, norma dan

kebijakan pendidikan nasional. Memperoleh identitas pribadi dalam mengembangkan

suatu pandangan kristiani, belajar menghargai pandangan dan budaya ini. Lembaga

pendidikan ini menerima mahasiswa yang mengerti dan menerima misi universitas”

(UNKLAB, 2013).

Di Universitas Klabat, sistem penilaian akademik dosen bagi mahasiswanya

terdiri dari penilaian quiz, assignment, test, mid test, final test, dan attendance. Quiz,

assignment, test, mid test, dan final test di UNKLAB sebagian besar masih dalam

bentuk lembaran kertas dan dari proses tersebut, student pula ingin tahu informasi

detail nilai secara real time pada tiap subject yang mereka kontrak.

Dengan melihat latar belakang diatas, maka peneliti ingin memanfaatkan

bidang web development yang berguna untuk membangun sebuah aplikasi evaluasi

dan informasi akademik penilaian mahasiswa di Universitas Klabat.

1.2 Rumusan Masalah

Bagaimana membuat suatu aplikasi web yang membantu dalam proses

evaluasi akademis dan memberikan informasi detail nilai akademis mahasiswa di

Universitas Klabat.

1.3 Tujuan Penelitian

Tujuan dari penelitian ini adalah membuat suatu aplikasi web yang berguna

sebagai sarana evaluasi akademis dan memberikan informasi detail nilai akademis

mahasiswa di Universitas Klabat.

Page 3: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

3

1.4 Manfaat Penelitian

Adapun manfaat dari penelitian ini, yaitu:

1. Bagi dosen, sebagai suatu media yang membantu dosen dalam

mengevaluasi dan memberikan informasi penilaian bagi mahasiswanya.

2. Bagi mahasiswa, sebagai suatu media yang dapat memberikan informasi

tentang detail nilai yang diperolehnya dari subject yang dikontrak.

3. Bagi peneliti, dapat menambah pengetahuan dalam perancangan suatu web

yang dinamis.

4. Bagi peneliti selanjutnya, penelitian ini dapat menjadi suatu dasar

pengetahuan dan tolak ukur dalam mengembangkan aplikasi ini.

1.5 Kerangka Teori

Pembuatan aplikasi evaluasi dan informasi akademik penilaian mahasiswa di

Universitas Klabat, peneliti melakukan penelitian menggunakan model proses

incremental. Menurut Pressman (2010, p41), model proses incremental

mengkombinasikan elemen-elemen aliran proses linier dan paralel. Proses model

incremental menerapkan urutan linier seperti waktu yang berlangsung pada kalender.

Setiap urutan linier menghasilkan penyampaian “penambahan” dari software dengan

cara yang mirip dengan peningkatan yang dihasilkan oleh aliran proses evolusi.

Kelebihan penggunaan model proses incremental (Achmad Basuki, 2006),

adalah sebagai berikut:

1. User tidak perlu menunggu seluruh sistem dikirimkan, karena increment

pertama mempunyai persyaratan kritis dan perangkat lunak segera dapat

Page 4: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

4

digunakan.

2. User dapat memakai increment pertama sebagai prototype.

3. Resiko kegagalan proyek secara keseluruhan lebih rendah.

4. Pengujian paling ketat diberlakukan pada increment pertama.

Deskripsi dari Gambar 1.1 adalah sebagai berikut:

1. Communication

Aktivitas kerangka kerja ini melibatkan komunikasi dan kolaborasi dengan

pengguna (dan stakeholder lainnya) dan meliputi persyaratan pengumpulan

dan kegiatan terkait lainnya.

Gambar 1.1 Model Incremental (Pressman, 2009)

Page 5: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

5

2. Planning

Aktivitas kerangka kerja ini menetapkan suatu rencana untuk rekayasa

perangkat lunak yang menggambarkan tugas-tugas yang akan dilakukan,

menganalisa resiko, sumber daya yang akan dibutuhkan, pekerjaan produk

yang harus dihasilkan, dan jadwal kerja.

3. Modelling

Aktivitas kerangka kerja ini meliputi pembuatan model yang memungkinkan

pengembang (developer) dan client untuk lebih memahami kebutuhan

perangkat lunak (software requirement) dan desain untuk pencapaian

kebutuhan tersebut.

Modeling terbagi atas dua proses yaitu:

a) Analysis

Tahap ini merupakan tahap penting sebelum program atau sistem ditulis.

Tahap analisis meliputi beberapa aspek dalam sistem, seperti lingkungan

organisasi, analisis sistem untuk memenuhi kebutuhan waktu sekarang,

analisis system requirement (input, output, process, storage, and control).

b) Design atau Perancangan

Tahap desain juga melibatkan rancangan interface dan prosedur yang

mendukung fungsional sistem. Pada tahap ini dilakukan koreksi pada sistem

informasi, sehingga kesalahan pada sistem bisa diperbaiki sedini mungkin.

Page 6: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

6

4. Construction

Aktivitas kerangka kerja ini menggabungkan kegiatan coding dan pengujian

(testing) yang diperlukan untuk mengungkapkan kesalahan dalam code.

5. Deployment

Tahap terakhir di mana perangkat lunak diberikan kepada user, kemudian user

akan memberikan feedback. Pada tahap ini juga dilakukan proses

maintenance.

1.6 Kerangka Konseptual

Dalam sub-bab ini, peneliti membagi kerangka konseptual menjadi dua

bagian yaitu kerangka konseptual penelitian dan kerangka penelitian aplikasi.

1.6.1 Kerangka Konseptual Penelitian

Kerangka konseptual penelitian akan menjelaskan tentang gambaran dan

tahapan-tahapan yang akan dilakukan dalam penelitian ini. Adapun penelitian ini,

peneliti menggunakan metode incremental oleh pressman (2010, p41) dan tahapan-

tahapan yang akan dilakukan dalam penelitian ini yaitu komunikasi, perencanaan,

analisa dan perancangan, koding dan pengujian, dan implementasi.

Page 7: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

7

Gambar 1.2 Tahapan Penelitian

1. Komunikasi: peneliti melakukan pengumpulan data yang berhubungan

dengan aplikasi dan sumber pustaka digunakan sebagai pendukung

pembuatan aplikasi. Data yang dikumpulkan berupa data hasil wawancara

dan observasi terhadap kebutuhan pengguna yang menjadi rumusan

masalah yang akan dianalisa untuk mencari pemecahan masalah.

2. Perencanaan: berhubungan dengan pengambilan keputusan dalam

menganalisis resiko-resiko perangkat lunak dan melakukan penjadwalan.

3. Analisa dan Perancangan: peneliti menganalisis dan perancang/mendesain

interface dari aplikasi yang akan dikembangkan.

4. Koding dan Pengujian: pada tahap ini, peneliti akan menggabungkan

Pembuatan & pengujian aplikasi

Penyajian hasil penelitian

Analisa sistem & koreksi

Rancangan Interface

Pengumpulan data

Studi pustaka

Menetapkan tujuan penelitian

Penjadwalan

Page 8: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

8

kegiatan coding dan pengujian (testing) yang diperlukan untuk

mengungkapkan kesalahan dalam code. Penulis menulis kode program

menggunakan bahasa pemrograman PHP versi 5.3.0 dengan

menggunakan framework Yii versi 1.1.13. Metode pengujian yang

dilakukan adalah black box.

5. Implementasi: aplikasi siap untuk di implementasikan untuk mendapatkan

feedback dari user dan dari tahap ini juga akan dilakukan proses

maintanance terhadap aplikasi.

1.6.2 Kerangka Konseptual Aplikasi

Gambaran umum tentang aplikasi web yang akan dikembangkan dapat dilihat

pada Gambar 1.3.

Gambar 1.3 Kerangka Konseptual Aplikasi

Page 9: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

9

Kerangka konseptual aplikasi menjelaskan bagaimana sistem berinteraksi

dengan manusia, disini terdapat tiga pengguna, aplikasi evaluasi dan informasi

akademik nilai student, dan database server. Deskripsi dari gambar 1.3. adalah

sebagai berikut:

1. Administrator

Administrator akan melakukan login untuk mengakses sistem dan dapat

melakukan view, insert, update data operator serta dapat melakukan

pengontrolan semua operator, subject, dan students (Create, Update, and

Delete).

2. Operator(Dosen)

Operator melakukan login untuk mengakses sistem dan dapat melakukan

view, insert, update data students, subject, dan membuat soal.

3. Students

Students melakukan login untuk mengakses sistem dan dapat melakukan view

detail nilai pada tiap subject yang dikontrak secara real time dan mengikuti

evaluasi akademik sesuai subject dan dosennya.

1.7 Cakupan dan Batasan Penelitian

Pada sub-bab ini akan membahas mengenai ruang lingkup dan batasan dari

penelitian ini.

1.7.1 Cakupan penelitian

Ruang lingkup penelitian yang akan dilakukan adalah sebagai berikut:

Page 10: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

10

1. Soal evaluasi dibuat dan di update oleh operator.

2. Soal yang dibuat bisa dalam bentuk perorangan ataupun secara

berkelompok.

3. Terdapat batas waktu yang secara otomatis dalam pengerjaan soal.

4. Sistem dapat memeriksa hasil evaluasi secara langsung.

5. Student dapat meng-upload assignment, project berupa document.

1.7.2 Batasan penelitian

Batasan dari penelitian ini adalah sebagai berikut:

1. Evaluasi dibuat dalam bentuk pilihan ganda.

2. Document yang akan di-upload hanya dalam bentuk word dan pdf.

3. Aplikasi web ini di implementasikan pada Fakultas Ilmu Komputer.

1.8 Daftar Istilah

Interface : Tampilan dimana pengguna dapat mengakses

Aplikasi Evaluasi dan Informasi Penilaian

Akademik Mahasiswa.

PHP : PHP Hypertext Preprocessor merupakan

salah satu bahasa pemograman yang berjalan

dalam sebuah web-server (server side).

(http://agiptek.com).

HTTP : Hyper Text Transfer Protocol adalah sebuah

metode atau protokol untuk men-dowload file

Page 11: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

11

ke komputer. Protokol ini berbasis hyper text,

sebuah format teks yang umum digunakan di

Internet.(http://IlmuKomputer.com).

URL : Uniform Resource Locator merupakan sebuah

alamat yang menunjukkan rute ke file pada

web atau pada fasilitas internet yang lain.

URL diketikkan pada browser untuk

mengakses suatu situs web.

Web dinamis : Jenis halaman web yang disusun oleh konten

dan layout yang kaya akan informasi

didalamnya dan dapat melakukan perubahan

data. (http://www.webarq.com).

Framework Yii(Yes It Is) : Kerangka kerja PHP berbasis komponen,

berkinerja tinggi untuk pengembangan

aplikasi dalam pemrograman web berskala

besar. (http://www.yiiframework.com/).

1.9 Sistematika Penulisan

BAB I : PENDAHULUAN

Memberikan penjelasan mengenai latar belakang dilakukannya

penelitian, perumusan masalah yang menjadi acuan mengapa

penelitian ini dibuat, tujuan penelitian, manfaat dari penelitian

yang dilakukan. Kerangka teori yang menunjukan secara singkat

Page 12: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

12

teori-teori pendukung penelitian, kerangka konseptual yang

memberikan gambaran arsitektur penelitian, batasan dan ruang

lingkup penelitian, sistematika penulisan yang menunjukan

pembahasan yang tercakup dalam setiap BAB beserta keterkaitan

antar BAB.

BAB II : LANDASAN TEORI

Menjelaskan mengenai teori-teori yang mendasari dan yang

berkaitan erat untuk penelitian yang dilakukan.

BAB III : METODOLOGI PENELITIAN

Menjelaskan mengenai instrumentasi penelitian serta lingkungan

pengembangan penelitian yang dilakukan.

BAB IV : ANALISIS DAN PERANCANGAN

Memberikan gambaran tentang analisis dan perancangan dari

penelitian yang dilakukan.

BAB V : IMPLEMENTASI

Menjelaskan mengenai implementasi dari analisis dan

perancangan yang telah dilakukan yaitu dengan membuat

rancangan yang ada menjadi suatu sistem yang real.

BAB VI : SIMPULAN DAN SARAN

Memberikan rangkuman dari penelitian yang dilakukan dan

memberikan penelitian lanjutan yang dapat dilakukan dari

penelitian ini.

Page 13: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

13

BAB II

LANDASAN TEORI

Bab ini menjelaskan tentang teori-teori yang berkaitan dalam pengembangan

aplikasi.

2.1 Penilaian Berbasis Kelas (PBK)

“Pendidikan akademik merupakan pendidikan tinggi program sarjana dan

pascasarjana yang diarahkan terutama pada penguasaan disiplin ilmu pengetahuan

tertentu”(UU RI Nomor 20 Tahun 2003, p27).

Menurut Drs. Thohari, MM (2013), proses pembelajaran merupakan upaya

yang dilakukan guru untuk mencapai tujuan yang dirumuskan dalam kurikulum.

Penilaian merupakan salah satu kegiatan yang dilakukan untuk mengukur dan menilai

tingkat pencapaian kurikulum dan berhasil tidaknya proses pembelajaran. Penilaian

juga digunakan untuk mengetahui kekuatan dan kelemahan yang ada dalam proses

pembelajaran, sehingga dapat dijadikan dasar untuk pengambilan keputusan.

“Mata kuliah, sebagai salah satu unit terkecil dari sebuah program studi,

adalah serangkaian satuan pelajaran dari suatu bidang studi. Itu adalah rambu-rambu

yang harus dilewati seorang mahasiswa dalam melengkapi tuntutan suatu program

studi” (UNKLAB, 2013).

Page 14: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

14

Sumarna Surapranata dan Muhammad Hatta (2004) mengemukakan jenis-

jenis penilaian berbasis kelas, yaitu “tes tertulis, tes perbuatan, pemberian tugas,

penilaian kinerja (performance assessment), penilaian proyek, penilaian hasil kerja

peserta didik (product assessment), penilaian sikap, dan penilaian portofolio”.

2.2 World Wide Web

Menurut Yuhefizar (2008), website atau world wide web (www) adalah

kumpulan halaman-halaman web yang mengandung informasi. Menurut Jovan

(2007), website adalah media penyampaian informasi di internet.

Website terdiri dari file-file, dan file-file tersebut disimpan dalam berbagai

komputer yang disebut dengan server. Saat ini jutaan server dari seluruh dunia

terhubung ke internet. Itulah sebabnya internet disebut jaringan luas dari komputer.

Untuk memanggil file dari dalam server digunakan sebuah perangkat lunak yang

disebut dengan browser (yaitu internet explorer). Sedangkan untuk merancang

website digunakan sebuah perangkat lunak yang disebut dengan Web Design.

(Pardosi, 2005).

HTTP adalah suatu protokol yang digunakan oleh World Wide Web. HTTP

mendefinisikan bagaimana suatu pesan bisa diformat dan dikirimkan dari server ke

client. HTTP juga mengatur aksi-aksi apa saja yang harus dilakukan oleh web server

dan juga web browser sebagai respon atas perintah-perintah yang ada pada protokol

HTTP ini. Sebagai contoh, ketika anda mengetikkan suatu alamat atau URL pada

internet browser, maka sebenarnya web browser akan mengirimkan perintah HTTP

ke web server. Web server kemudian akan menerima perintah ini dan melakukan

Page 15: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

15

aktivitas sesuai dengan perintah yang diminta oleh web browser (misalnya akses ke

database, file, e-mail dan lain sebagainya). Hasil aktivitas tadi akan dikirimkan

kembali ke web browser untuk ditampilkan kepada pengguna. HTTP digunakan

untuk jenis layanan WWW di jaringan TCP/IP. Protokol HTTP bersifat request-

response, yaitu dalam protokol ini client menyampaikan pesan request ke server dan

server kemudian memberikan respons yang sesuai dengan request. (Tiolia Evi dan

Malabay, 2009)

2.3 Sistem dan Informasi

Sistem informasi didefinisikan oleh Leitch dan Davis dalam Jogiyanto (2005),

adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan

pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan

strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-

laporan yang diperlukan.

Informasi yang disampaikan berdasarkan pesan dan memiliki makna. Arti

tergantung pada perspektif orang yang menerima pesan. Kita dikelilingi oleh berbagai

informasi yang potensial, tetapi hanya beberapa yang datang ke perhatian kita, dan

hanya beberapa yang benar-benar berarti penuh dalam konteks kita (Simon Bennett,

dkk., 2006).

2.4 Apache Web server

Web server merupakan sebuah perangkat lunak dalam server yang berfungsi

menerima permintaan (request) berupa halaman web melalui HTTP dari klien yang

Page 16: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

16

dikenal dengan browser web dan mengirimkan kembali (response) hasilnya dalam

bentuk halaman-halaman web yang umumnya berbentuk dokumen HTML (Achmad

Solichin, 2009).

Menurut A.B. Mutiara, dkk. (2012), apache adalah sebuah nama web server

yang bertanggung jawab pada request response HTTP. Selain itu, Apache juga

diartikan sebagai suatu web server yang kompak, modular, mengikuti standar

protokol HTTP. Apache memiliki fitur-fitur canggih seperti pesan kesalahan yang

dapat dikonfigurasi, autentikasi berbasis basis data dan lain‐lain. Apache juga

didukung oleh sejumlah antarmuka pengguna berbasis grafik (GUI) yang

memungkinkan penanganan server menjadi mudah. Apache merupakan perangkat

lunak sumber terbuka dikembangkan oleh komunitas terbuka yang terdiri dari

pengembang-pengembang dibawah naungan Apache Software Foundation.

2.5 DBMS dan MySQL

DBMS merupakan suatu sistem perangkat lunak yang memungkinkan user

untuk membuat, memelihara, mengontrol, dan mengakses database secara praktis dan

efisien. Dengan DBMS, user akan lebih mudah mengontrol dan memanipulasi data

yang ada. RDBMS (Relational Database Management System) merupakan salah satu

jenis DBMS yang mendukung adanya relationship atau hubungan antar tabel. Di

samping RDBMS, terdapat jenis DBMS lain, misalnya Hierarchy DBMS, Object

Oriented DBMS, dsb. SQL merupakan singkatan dari Structured Query Language.

SQL atau juga sering disebut sebagai query merupakan suatu bahasa (language) yang

digunakan untuk mengakses database. (Achmad Solichin, 2009).

Page 17: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

17

MySQL adalah salah satu jenis database server yang sangat terkenal.

kepopulerannya disebabkan MySQL menggunakan SQL sebagai bahasa dasar untuk

mengakses databasenya. selain itu, ia bersifat open source pada berbagai platform.

MySQL termasuk jenis RDBMS. itulah sebabnya, istilah seperti tabel, baris, dan

kolom digunakan pada MySQL, sebuah database mengandung satu atau sejumlah

tabel. tabel terdiri atas sejumlah baris dan setiap baris mengandung satu atau beberapa

kolom. (Abdul Kadir, 2008).

Gambar 2.1 Hieracki database (Achmad Solicin, 2009)

Manfaat menggunakan DBMS (Oracle. All rights reserved, 2007) antara lain:

1. Untuk membatasi akses data

2. Mempermudah dalam pembuatan query yang kompleks

3. Untuk memberikan independensi data

4. Untuk menyajikan pandangan yang berbeda dari data yang sama

2.6 PHP Hypertext Preprocessor

Menurut Abdul Kadir (2008), PHP merupakan singkatan dari PHP Hypertext

Preprocessor. Ia merupakan bahasa berbentuk skrip yang ditempatkan dalam server

Page 18: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

18

dan diproses di server. Hasilnyalah yang dikirimkan ke klien, tempat pemakai

menggunakan browser. PHP dirancang untuk membentuk aplikasi web dinamis.

Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini.

Misalnya, menampilkan isi database ke halaman web.

Andrean Saputro (2009), PHP adalah bahasa pemrograman yang berfungsi

untuk membuat website dinamis maupun aplikasi web. Berbeda dengan HTML yang

hanya bisa menampilkan konten statis, PHP bisa berinteraksi dengan database, file

dan folder, sehingga membuat PHP bisa menampilkan konten yang dinamis dari

sebuah website. Blog, Toko Online, CMS, Forum, dan Website Social Networking

adalah contoh aplikasi web yang bisa dibuat oleh PHP. PHP adalah bahasa scripting,

bukan bahasa tag-based seperti HTML. PHP termasuk bahasa yang cross-platform,

ini artinya PHP bisa berjalan pada sistem operasi yang berbeda-beda (Windows,

Linux, ataupun Mac). Kelebihan PHP Hypertext Preprocessor antara lain:

1. Bersifat open source sehingga dapat didapat secara gratis dan setiap waktu

selalu muncul fungsi-fungsi tambahan yang dapat meningkatkan

performa.

2. Script PHP sangat mudah dipahami dan mempunyai kecepatan tinggi

dalam pengaksesan.

3. Merupakan bahasa yang bisa di tanam atau di tempel dalam HTML

(embedded language).

4. Dapat berjalan di banyak web server.

5. Cross-platform, artinya PHP dapat berjalan di berbagai macam sistem

Page 19: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

19

operasi. (Windows, Linux/Unix, dan Machintos).

6. Bisa bekerjasama dengan banyak basis data, antara lain Oracle dan

MySQL yang sudah tidak diragukan lagi kemampuannya.

2.7 Framework Yii

“Yii adalah framework (kerangka kerja) PHP berbasis-komponen, berkinerja

tinggi untuk pengembangan aplikasi Web berskala-besar. Yii menyediakan reusability

maksimum dalam pemrograman Web dan mampu meningkatkan kecepatan

pengembangan secara signifikan.”(Sabit Huraira, 2012).

Menurut Ninin Sapto Hargianto (2012), Yii adalah kerangka kerja bahasa

pemrograman PHP berorientasi objek yang menerapkan pola desain dengan konsep

model-view-controller (MVC).

Gambar 2.2 Konsep MVC (Ninin S.H., 2012)

Sabit Huraira (2012), dari bukunya yang berjudul Menjelajah Yii Framework,

dalam MVC (Model-View-Controler), model menggambarkan informasi atau data

beserta aturan bisnisnya (validasi, relasi, dll). View atau tampilan menggambarkan

antarmuka yang menjadi penghubung antara aplikasi dan pengguna (user).

Sedangkan Controller akan menjadi jembatan komunikasi antara Model dan View.

Page 20: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

20

Selain implementasi MVC, Yii juga memperkenalkan front-controller, yang

disebut Aplikasi, yang mengenkapsulasi konteks eksekusi untuk memproses sebuah

request. Aplikasi mengumpulkan beberapa informasi mengenai request pengguna dan

kemudian mengirimnya ke controller yang sesuai untuk penanganan selanjutnya.

Diagram berikut memperlihatkan alur kerja umum sebuah aplikasi Yii saat

menangani permintaan pengguna (yii framework, 2012).

Gambar 2.3 Alur kerja umum aplikasi Yii (yii framework, 2011)

Page 21: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

21

Deskripsi dari gambar 2.3 adalah sebagai berikut(yii framework, 2011):

1. Pengguna membuat permintaan dengan URL

http://www.example.com/index.php?r=post/show&id=1 dan server Web

menangani permintaan dengan menjalankan skrip bootstrap index.php.

2. Skrip bootstrap membuat sebuah instance Aplikasi dan menjalankannya.

3. Aplikasi mendapatkan rincian informasi permintaan pengguna dari

komponen aplikasi bernama request.

4. Aplikasi menentukan controller dan aksi yang diminta dengan bantuan

komponen aplikasi bernama urlManager. Dalam contoh ini, controller

adalah post yang merujuk pada kelas PostController; dan aksi adalah

show yang arti sebenarnya ditentukan oleh controller.

5. Aplikasi membuat instance controller yang diminta untuk selanjutnya

menangani permintaan pengguna. Controller menentukan aksi show

merujuk pada sebuah metode bernama actionShow dalam kelas controller.

Kemudian membuat dan menjalankan filter (contoh kontrol akses,

pengukuran) terkait dengan aksi ini. Aksi dijalankan jika diijinkan oleh

filter.

6. Aksi membaca Post model di mana ID adalah 1 dari database.

7. Aksi meyiapkan view(tampilan) bernama show dengan model Post.

8. View membaca dan menampilkan atribut model Post.

9. View menjalankan beberapa widget.

10. View menyiapkan hasil yang dipasangkan dalam layout(tata letak).

Page 22: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

22

11. Aksi mengakhiri pembuatan view dan menampilkan hasil akhir kepada

pengguna.

Fitur yang penting diperkenalkan dalam yii (yii framework, 2011) antara lain

sebagai berikut:

1. Menambah dukungan penggunaan skin widget.

2. Menambah CActiveForm untuk mempermudah penulisan kode yang

berhubungan dengan form serta mendukung validasi yang konsisten dan

seamless baik pada bagian klien maupun server.

3. Menambah sebuah alat penghasil code yang berbasis web yang disebut

sebagai Gii.

4. Menambah dukungan untuk mengatur nilai default widget di dalam

konfigurasi aplikasi.

5. Menambah dukungan untuk penemaan (theming) view pada widget.

6. Menambah dukungan untuk melakukan validasi data pada sisi client

secara seamless dengan menggunakan CActiveForm.

7. Menambah dukungan kelas aturan URL buatan sendiri.

Setiap framework memiliki keunggulan dan kekurangan masing-masing.

Keunggulan framework yii (shariveweb, 2012) antara lain:

1. Memiliki performance yang tinggi menurut situs resminya yii memiliki

performance yang tinggi jika dibandingkan framework lain.

Page 23: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

23

hal ini terlihat pada saat pengetesan dalam RPS (request per second)

dengan uji coba program „hello world‟.

2. Mempercepat pengerjaan website Gii. Tool ini sangat mempermudah

dalam pembuatan aplikasi CRUD (create, update, delete), fitur-fitur

sederhana yang dibutuhkan telah tersedia secara otomatis, seperti ;

searcing, paging, advance search, read, update, delete. semua telah

tersedia didalamnya.

3. Mendukung ajax, ajax penting ada dalam website, terutama dalam

halaman CMS, yang membutuhkan kecepatan untuk akses halaman.

4. Tersedia magic-function, magic-function yang di maksud adalah fungsi-

fungsi yang dapat digunakan dalam yii. seperti: validasi, ajax validasi,

captcha, paging, searcing.

2.8 UML(Unified Modelling Language)

Menurut Munawar (2005), Unified Modelling Language adalah adalah

keluarga notasi grafis yang di dukung oleh meta-model tunggal, yang membantu

pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang di bangun

menggunakan pemrograman berorientasi objek.

UML terdiri dari kumpulan besar notasi yang tujuannya adalah untuk model

sistem perangkat lunak dalam semua aspek mereka: data, state, behavior,

communication, services provided, timing properties, and deployment configurations.

Setiap notasi sendiri membentuk bahasa yang kompleks, dan notasi saling terkait dan

saling tergantung (Kevin Lano, 2009).

Page 24: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

24

Berikut tujuan utama dalam desain UML adalah (Sugrue J., 2009) :

1. Menyediakan bagi pengguna (analisis dan desain sistem) suatu bahasa

pemodelan visual yang ekspresif sehingga mereka dapat mengembangkan

dan melakukan pertukaran model data yang bermakna.

2. Menyediakan mekanisme yang spesialisasi untuk memperluas konsep inti.

3. Karena merupakan bahasa pemodelan visual dalam proses

pembangunannya maka UML bersifat independent terhadap bahasa

pemrograman tertentu.

4. Memberikan dasar formal untuk pemahaman bahasa pemodelan.

5. Mendorong pertumbuhan pasar terhadap penggunaan alat desain sistem

yang berorientasi objek (OO).

6. Mendukung konsep pembangunan tingkat yang lebih tinggi seperti

kolaborasi, kerangka, pola dan komponen terhadap suatu sistem.

Pada UML versi 2.0 terdiri atas tiga kategori dan memiliki 13 jenis diagram

(John Wiley, 2005) yaitu :

1. Struktur Diagram

Menggambarkan elemen dari spesifikasi dimulai dengan kelas, obyek, dan

hubungan mereka, dan beralih ke dokumen arsitektur logis dari suatu sistem. Struktur

diagram dalam UML terdiri atas :

1. Class diagram

Class diagram menggambarkan struktur statis dari kelas dalam sistem

Page 25: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

25

anda dan menggambarkan atribut, operasi dan hubungan antara kelas.

Class diagram membantu dalam memvisualisasikan struktur kelas-kelas

dari suatu sistem dan merupakan tipe diagram yang paling banyak

dipakai. Selama tahap desain, class diagram berperan dalam menangkap

struktur dari semua kelas yang membentuk arsitektur sistem yang dibuat.

Class memiliki tiga area pokok:

1) Class name

2) Attribute

3) Operation

2. Object diagram

Object diagram menggambarkan kejelasan kelas dan warisan dan kadang-

kadang diambil ketika merencanakan kelas, atau untuk membantu

pemangku kepentingan non-program yang mungkin menemukan diagram

kelas terlalu abstrak.

3. Component diagram

Component diagram menggambarkan struktur fisik dari kode, pemetaan

pandangan logis dari kelas proyek untuk kode aktual di mana logika ini

dilaksanakan.

4. Deployment diagram (Collaboration Diagram in version 1.x)

Deployment diagram memberikan gambaran dari arsitektur fisik perangkat

lunak, perangkat keras, dan artefak dari sistem. Deployment diagram

dapat dianggap sebagai ujung spektrum dari kasus penggunaan,

Page 26: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

26

menggambarkan bentuk fisik dari sistem yang bertentangan dengan

gambar konseptual dari pengguna dan perangkat berinteraksi dengan

sistem.

5. Composite Structure diagram

Merupakan sebuah diagram struktur komposit mirip dengan class

diagram, tetapi menggambarkan bagian individu, bukan seluruh kelas.

Kita dapat menambahkan konektor untuk menghubungkan dua atau lebih

bagian dalam atau ketergantungan hubungan asosiasi.

6. Package diagram

package diagram biasanya digunakan untuk menggambarkan tingkat

organisasi yang tinggi dari suatu proyek software. Atau dengan kata lain

untuk menghasilkan diagram ketergantungan paket untuk setiap paket

dalam Model Tree.

2. Behavior Diagram

Menggambarkan ciri-ciri behavior/ metode/ fungsi dari sebuah sistem atau

business process. Behavior diagram dalam UML terdiri atas :

7. Use case diagram

Diagram yang menggambarkan actor, use case dan relasinya sebagai

suatu urutan tindakan yang memberikan nilai terukur untuk aktor. Sebuah

use case digambarkan sebagai elips horizontal dalam suatu diagram UML

use case.

Use case memiliki dua istilah:

Page 27: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

27

1) System use case; interaksi dengan sistem.

2) Business use case; interaksi bisnis dengan konsumen atau kejadian

nyata.

8. Activity diagram

Menggambarkan aktifitas-aktifitas, objek, state, transisi state dan event.

Dengan kata lain kegiatan diagram alur kerja menggambarkan perilaku

sistem untuk beraktivitas.

9. State Machine diagram (State chart diagram in version 1.x)

Menggambarkan state, transisi state dan event.

3. Interaction Diagram

Bagian dari behavior diagram yang menggambarkan interaksi objek.

Interaction diagram dalam UML terdiri atas :

10. Communication diagram

Serupa dengan sequence diagram, tetapi diagram komunikasi juga

digunakan untuk memodelkan perilaku dinamis dari use case. Bila

dibandingkan dengan Sequence diagram, diagram komunikasi lebih

terfokus pada menampilkan kolaborasi benda daripada urutan waktu.

11. Interaction Overview diagram

Interaksi overview diagram berfokus pada gambaran aliran kendali

interaksi dimana node adalah interaksi atau kejadian interaksi.

12. Sequence diagram

Sequence diagram menjelaskan interaksi objek yang disusun berdasarkan

Page 28: Draft Skripsi

FAKULTAS ILMU KOMPUTER UNIVERSITAS KLABAT

28

urutan waktu. Secara mudahnya sequence diagram adalah gambaran tahap

demi tahap, termasuk kronologi (urutan) perubahan secara logis yang

seharusnya dilakukan untuk menghasilkan sesuatu sesuai dengan use case

diagram.

13. Timing diagram

Timing diagram dalam UML, menggambarkan interaksi antara objek

sepanjang sumbu waktu. Tujuan utama dari timing diagram adalah untuk

menunjukkan perubahan keadaan objek dalam menanggapi peristiwa dari

waktu ke waktu.