BAB II TINJAUAN PUSTAKA DAN DASAR TEORI 2.1 Tinjauan Pustaka Penelitian yang berhubungan dengan produk yang penulis buat salah satunya adalah “Sistem Informasi Generate Jadwal Universitas Sebelas Maret”. Pada sistem informasi penjadwalan ini merupakan sebuah sistem penjadwalan kuliah berbasis web milik Universitas Sebelas Maret, sistem ini memiliki fungsi untuk melihat berbagai macam jadwal seperti agenda rektor, grafik efisiensi ruang, pencarian jadwal dosen, jadwal penggunaan ruang dan laporan jadwal. Dengan kecanggihan yang ada, sistem ini mampu menampilkan agenda dan jadwal yang sudah di generate dari server jadwal Universitas Sebelas Maret. Tetapi sistem informasi jadwal perkuliahan di Universitas Sebelas Maret sampai saat ini masih harus diakses oleh mahasiswa melalui website, mengingat di jaman sekarang masyarakat termasuk mahasiswa dan dosen di Universitas Sebelas Maret lebih sering menggunakan ponsel mereka untuk mengakses keinginan dan kebutuhan dengan lebih mudah. Selain permasalahan tersebut, jika sistem informasi penjadwalan dibuka melalui web browser pada ponsel tampilannya tidak sesuai dengan resolusi tampilan pada ponsel atau dengan kata lain sistem informasi penjadwalan yang sudah ada belum memiliki tampilan yang responsive. Terakhir adalah penelitian yang penulis lakukan dengan meninjau tugas akhir dari angkatan 2011 milik Jufans AnurwanIlmiarsono yang berjudul “Pembangunan Sistem Informasi Jadwal Perkuliahan Mobile Berbasis Android Studi Kasus : Universitas Sebelas Maret”. Penelitian tersebut membahas tentang pembanguan sebuah system informasi jadwal perkuliahan dan alert atau peringatan kuliah yang dijalankan di ponsel. Meninjau dari penilitian yang sudah dilakukan, penulis membuat sebuah aplikasi dengan judul “Pembuatan Android Aplikasi Lihat Jadwal UNS”. Pada aplikasi android yang dibuat untuk mempermudah pengguna atau mahasiswa 5
dalam mengakses aplikasi penjadwalan melalui ponselnya, maka penulis membuat aplikasi penjadwalan uns berbasis android yang mana pengguna dapat dengan mudah melihat jadwal-jadwal seperti melihat jadwal per dosen, jadwal per program studi, dan melihat penggunaan ruang per program studi. Aplikasi berbasis android ini dapat di unduh di playstore sehingga lebih mudah diakses melalui ponsel masing-masing. 2.2 Landasan Teori 2.2.1 Aplikasi Mobile Aplikasi mobile berasal dari kata application dan mobile. Application yang artinya penerapan, lamaran, penggunaan (Buyens,2001). Secara istilah aplikasi adalah program siap pakai yang direka untuk melaksanakan suatu fungsi bagi pengguna atau aplikasi yang lain dan dapat digunakan oleh sasaran yang dituju sedangkan mobile dapat di artikan sebagai perpindahan dari suatu tempat ke tempat yang lain. Kata mobile mempunyai arti bergerak atau berpindah, sehingga aplikasi mobile (Rangsang Purnama,2010 ) adalah sebutan untuk aplikasi yang berjalan di mobile device . Dengan menggunakan aplikasi mobile, dapat dengan mudah melakukan berbagai macam aktifitas mulai dari hiburan, berjualan, belajar, mengerjakan pekerjaan kantor, browsing dan lain sebagainya.
Pemanfaatan aplikasi mobile untuk hiburan paling banyak disukai oleh pengguna telepon seluler, karena dengan memanfaatkan adanya fitur game, musicplayer, sampai video player membuat kita mejadi semakin mudah menikmati hiburan kapan saja dan dimanapun. Perangkat mobile memiliki banyak jenis dalam hal ukuran,desain layout, tetapi memreka memiliki kesamaan karakteristik yang sanagt berbeda dari dekstop sistem. Perangkat mobile memiliki memori yang kecil.
2.2.2 Penjadwalan Menurut Kamus Besar Bahasa Indonesia salah satu arti kata jadwal adalah daftar atau tabel kegiatan atau rencana kegiatan dengan pembagian waktu pelaksanaan yang terperinci. Sedangkan penjadwalan merupakan proses untuk menyusun suatu jadwal atau urutan proses yang diperlukan dalam sebuah persoalan. Persoalan penjadwalan biasanya berhubungan dengan penjadwalan kelas dalam sekolah atau perkuliahan dan juga dalam lingkup yang tidak jauh berbeda seperti penjadwalan mata kuliah, penjadwalan ujian, atau bisa juga penjadwalan karyawan, baik dalam suatu perusahaan ataupun dalam rumah sakit. Dalam penjadwalan kuliah, akan dibahas tentang pembagian jadwal untuk tiap mahasiswa pada kuliah tertentu sekaligus dosen pengajarnya, dalam penjadwalan pelajaran sekolah akan dibahas tentang pembagian jadwal pelajaran untuk tiap-tiap kelas yang ada beserta guru pengajar pelajaran tersebut, dalam penjadwalan ujian akan dibahas pengaturan dosen yang menjaga ujian dan mahasiswa atau murid yang menempati ruang ujian yang ada, sedangkan pada penjadwalan karyawan, dilakukan pengaturan karyawan yang akan bekerja pada waktu tertentu di bagian tertentu. (Ariani, 2011)
2.2.3 Android Android adalah sebuah sistem operasi mobile yang berbasiskan pada versi modifikasi dari Linux. Pertama kali sistem operasi ini dikembangkan oleh perusahaan Android.Inc. Nama perusahaan inilah yang pada akhirnya digunakan sebagai nama proyek sistem operasi mobile tersebut, yaitu sstem operasi Android. Pada tahun 2005, sebagai bagian dari strategi untuk memasuki pasar mobile . Google membeli Android dan mengambil alih proses pengembangannya
sekaligus
team
developer
Android.
Google
menginginkan Android untuk menjadi system operasi open source apache
yang berarti setiap orang bebas untuk menggunakan dan mengunduh source code Android secara penuh. Terlebih lagi para vendor bebas untuk mengubah sekaligus membuat penyesuaian untuk Android. Di samping itu, perusahaan dapat secara bebas untuk
membuat
perbedaan dari produk vendor lainnya. Model
pengembangan ang sederhana membuat Android sangat interaktif dan hal tersebutlah yang membuat para vendor tertarik untuk mencoba sistem operasi Android. Seperti pada table 2.1.berikut versi Android yang ada semenjak pertama kali dirilis sampai saat ini. Tabel 2. 1 Tabel Versi Android Versi Android
Tanggal Rilis
Nama Kode
1.5
30 April 2009
Cupcake
1.6
15 September 2009
Donut
2.0/2.1
26 Oktober 2009
Éclair
2.2
20 Mei 2010
Froyo
2.3
6 Desember 2010
Ginger Bread
3.0
Tidak Diketahui
Honeycomb
4.0
19 Oktober 2011
Ice Cream Sandwich
4.1.x
9 July 2012
Jelly Bean
4.2.x
13 November 2012
Jelly Bean
4.3
24 Juli 2013
Jelly Bean
4.4
31 Oktober 2013
KitKat
5.0
15 Oktober 2014
Lollipop
6.0
28 Mei 2015
Marshmallow
Android adalah sebuah sistem operasi mobile open source dan dapat dimanufaktur untuk dikustomisasi sehingga tidak ada konfiigurasi yang pasti mengenai software dan hardware-nya. Akan tetapi, secara garis besar Android sendiri mendukung fitur-fitur berikut ini : a. Storage : Mendukung SQL Lite. SQL Lite adalah sebuah database relational lite (versi ringan) yang digunakan untuk meyimpan data.
b. Konektivitas : Mendukung koneksi GSM/EDGE, IDEN, CDMA, EVDO, UMTS, Bluethoot, Wifi, LTE, dan Wimax. c. Messaging : Mendukung SMS dan MMS. d. Web Browser : Web browser yang digunakan adalah browser berbasis open source Webkit, dengan engine java script Chrome V8. e. Media Support : Dukungan media meliputi file media bertipe : H.263, H.264 (dalam bentuk 3GP atau MP4container), MPEG-4, SP,AMR, AMR-WB (3GP container), MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, dan BMP. f. Dukungan Hardware : Sensor accelerometer, Kamera, Kompas digital, sensor proximity, dan GPS (Global Positioning System). g. Multi Touch : Mendukung layar dengan multi touch. h. Multitasking : Kemampuan untuk melaksanakan tugas secara bersamaan. i. Flash : Mendukung animasi Flash. j. Tethering : Mendukung berbagi koneksi internet.
2.2.4 Eclipse Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse: 1. Multi-platform:
Target
sistem
operasi
Eclipse
adalah Microsoft
Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X. 2. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya. 3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat
lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.
2.2.5 SQL Server 2008 SQL Server adalah perangkat lunak relation database management system (RDBMS) yang didesain untuk melakukan proses manipulasi database berukuran besar dengan berbagai fasilitas (Andri Kuniyo dan Kusrini,2007). SQL Server adalah sebuah sistem arsitektur terbuka yang memungkinkan para pengembang program memperluas dan menambahkan fungsi-fungsi ke dalam database tersebut (Feri Djuandi, 2002).
2.2.6 JSON JSON yang merupakan singkatan dari JavaScript Object Notation adalah standar berbasis teks untuk pertukaran data. Format JSON dikenal ringan (berukuran kecil), mudah untuk dibaca, ditulis, dan dipahami manusia serta mudah untuk diuraikan dan dibuat oleh mesin. Format ini dibuat berdasarkan bahasa pemrograman JavaScript, standar ECMA-262 edisi ketiga – Desember 1999. JSON bersifat language independent namun menggunakan kaidah penulisan yang dikenal luas oleh programmer dari keluarga bahasa C (C, C++, C#, Java, JavaScript, Perl, Python, dll), hal tersebut menjadikan JSON sangat ideal sebagai bahasa dalam pengiriman data (Felker, 2011).
2.2.7 UML Unified Modelling Language(UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem. (Dharwiyanti, 2003).
2.2.8 Use Case Diagram Use case diagram merupakan pemodelan untuk kelakuan (behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut. Syarat penamaan pada use case adalah nama didefinisikaan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case. 1. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang. 2. Use case merupakan fungsionalitas yang disediakan sistem sebagai unitunit yang saling bertukar pesan antarunit atau aktor. (Shalahuddin dan Rosa , 2011) Simbol-simbol yang ada pada diagram use case terlihat pada tabel 2.2.
Tabel 2. 2 Simbol Use Case
Simbol
Nama Actor/Aktor
Keterangan Orang, proses atau sistem lain yang berinteraksi dengan sistem informasi lain di luar sistem informasi itu sendiri; biasanya
Nama Aktor dinyatakan menggunakan kata benda di awal frase nama aktor. Use Case
Fungsional yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antarunit
Nama use
atau aktor; biasanya dinyatakan
case
dengan menggunakan kata kerja di awal frases nama use case. Asosiasi / association
Komunikasi antara aktor dan use case atau use case memiliki interaksi dengan aktor.
Ekstensi / << extend >>
extend
Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case
tambahan itu; mirip dengan prinsip inheritance pada pemrograman. Generalisasi / generalization
Hubungan generalisasi dan spesifikasi (umum -khusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari lainnya.
Include
Relasi use case tambahan ke sebuah use case dimana use case
<< include >>
yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat dijalankan use case ini.
2.2.9 Class Diagram Class diagram atau diagram kelas merupakan suatu diagram yang menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. 1. Atribut merupakan variable-variabel yang dimiliki oleh suatu kelas. 2. Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas.
Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-fungsi sesuai dengan kebutuhan sistem. Dalam mendefinisikan metode yang ada di dalam kelas perlu memperhatikan apa yang disebut dengan cohesion dan coupling. Cohesion adalah ukuran seberapa dekat keterkaitan instruksi di dalam sebuah metode terkait satu sama lain sedangakan coupling adalah ukuran seberapa dekat keterkaitan instruksi antara metode yang satu dengan metode yang lain dalam sebuah kelas. Sebagai aturan secara umum maka sebuah metode yang dibuat harus memiliki kadarcohesion yang kuat dan kadar coupling yang lemah. (Shalahuddin dan Rosa, 2011) Seperti terlihat pada tabel 2.3.simbol-simbol yang ada pada diagram kelas sebagai berikut: Tabel 2. 3 Simbol Class Diagram
Simbol
Keterangan
Nama Kelas
nama_kelas
Merupakan kelas pada struktur sistem yang terdiri dari atribut dan
-atribut +method()
method. Antarmuka / interface
Sama dengan konsep interface dalam pemrograman berorientasi objek
Asosiasi / association
Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity.
Asosiasi berarah / directed association
Relasi antar kelas dengan makna kelas yang satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity.
Generalisasi /
Relasi antar kelas dengan makna
generalization
generalisasi-spesialisasi (umumkhusus)
Kebergantungan / Dependency
Relasi antar kelas dengan makna kebergantungan antar kelas
Agregasi /
Relasi antar kelas dengan makna
aggregation
semua-bagian (whole-part)
Nesting
Relasi antar kelas dengan makna bersarang (inner class)
2.2.10 Sequence Diagram Sequence diagram menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambarkan diagram sekuen maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Banyaknya diagram sekuen yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada diagram sekuen sehingga semakin banyak use case yang didefinisikan maka diagram sekuen yang harus dibuat juga semakin banyak. (Shalahuddin dan Rosa, 2011) Tabel 2.4.menunjukkan simbol-simbol yang ada pada sequence diagram:
Tabel 2. 4 Simbol Sequence Diagram
Simbol
Keterangan
Nama Aktor/Aktor
Orang, proses atau sistem lain yang berinteraksi dengan sistem informasi lain diluar sistem informasi itu sendiri; biasanya dinyatakan menggunakan kata
Nama Aktor
benda di awal frase nama aktor Garis hidup /
Menyatakan kehidupan suatu objek
lifeline
nama objek : nama kelas
Objek
Menyatakan objek yang berinteraksi pesan
Waktu aktif
Menyatakan objek dalam keadaan aktif dan berinteraksi pesan
Simbol <
>
Keterangan
Nama Pesan tipe create
Menyatakan suatu objek membuat objek lain, arah panah mengarah pada objek yang dibuat
nama method()
Pesan tipe call
Menyatakan suatu objek memanggil operasi/metode yang ada pada objek yang dibuat
Pesan tipe send masukkan
Menyatakan bahwa suatu objek mengirimkan data masukkan/informasi ke objek lainnya, arah panah mengarah ke objek yang dikirim
Pesan tipe keluaran
return
Menyatakan bahwa suatu objek yang telah menjalankan suatu operasi atau metode yang menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian
X
Pesan tipe destroy
Menyatakan akhir hidup suatu objek