Draft Skripsi
-
Upload
jeandry-revival-wuisang -
Category
Documents
-
view
106 -
download
7
Embed Size (px)
Transcript of 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

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.

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

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)

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.

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.

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

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

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:

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

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

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.

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

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

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

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

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

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

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.

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)

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

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.

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

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

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,

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:

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

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.