BAB II LANDASAN TEORI 2.1
Sekolah Sekolah merupakan bangunan atau lembaga untuk belajar mengajar serta tempat
menerima dan memberi pelajaran.Sekolah dipimpin oleh seorang kepala sekolah. Kepala sekolah dibantu oleh wakil kepala sekola. Jumlah wakil kepala sekolah disetiap sekolah berbeda–beda, tergantung kebtuhannya. Ketersediaan sarana dalam suatu sekolah mempunyai peran dalam terlaksanannya proses pendidikan. ( Daryanto H. M, 2008 ). 2.2
Siswa Siswa merupakan awal dari proses (input) dimana semua nilai yang dihasilkan
akan dilanjutkan dan menghasilkan (output) yang akan diproses lebih lanjut. Dimana sistem data nilai siswa melakukan kegiatan mengidentifikasi untuk mengetahui seluruh nilai siswa hingga akhir yang akan diproses lebih lanjut untuk menghasilkan sebuah laporan kepada kepala sekolah ( Daryanto H. M, 2008 ). 2.3
Administrasi Pendidikan Administrasi pendidikan sebagai rangkaian kegiatan atau keseluruhan dalam
proses kerja sama dengan memanfaatkan semua sumber personel dan material yang tersedia sesuai untuk mencapai tujuan pendidikan yang telah diterapkan secara efektif dan efisien meliputi semua unit pendidikan bahkan sampai perguruan tinggi, tidak hanya terbatas sekolah dasar dan menengah. Pendidikanpun meliputi semua kegiatan mulai dari unit paling kecil sampai paling tinggi ( Daryanto H. M, 2008 ).
2.4 2.1.1
Konsep Dasar Sistem Pengertian Sistem Menurut Tatra Sutabri (2012:10) “Sistem adalah suatu kumpulan atau himpunan
dari unsur, komponen, atau variable yang teroganisir, saling berinteraksi, saling tergantung satu sama lain, dan terpadu”. Menurut Fathansyah (2012:11) “Sistem adalah sebuah tatanan (keterpaduan) yang terdiri atas sejumlah komponen fungsional (dengan satuan fungsi dan tugas khusus) yang saling berhubungan dan secara bersama-sama bertujuan untuk memenuhi suatu proses tertentu”. Menurut J. Satzinger – R. Jackson – S. Burd (2010:6) Sistem adalah kumpulan komponen yang saling terkait yang berfungsi bersama-sama untuk mencapai hasil.
http://digilib.mercubuana.ac.id/
Dari definisi diatas, dapat disimpulkan bahwa sistem adalah sekelompok elemen atau unsur yang saling berinteraksi, bekerjasama atau berhubungan satu sama lain untuk satu tujuan tertentu.
Karakteristik Sistem
2.1.2
Menurut Tatra Sutabri (2012:20) “Sebuah sistem mempunyai karakterisik atau sifat-sifat tertentu yang mencirikan bahwa hal tersebut bias dikatakan sebagai suatu sistem”. 2.5
Konsep Dasar Informasi Menurut Tata Sutabri (2012:29) “Informasi adalah data yang telah diklasifikasi
atau diinterpretasi untuk digunakan dalam proses pengambilan keputusan”. Kualitas dari suatu informasi tergantung dari tiga hal yaitu:
1. Akurat (accurate) Informasi
harus
bebas
tidakmenyesatkan.Akurat
juga
dari
kesalahan-kesalahan
berarti
informasi
harus
dan jelas
mencerminkan maksudnya.Informasi harus akurat karena biasanya dari sumber informasi sampai penerima informasi ada kemungkinan terjadi gangguan (noise) yang dapat mengubah atau merusak informasi tersebut. 2. Tepat waktu (timeline) Informasi yang datang pada penerima tidak boleh terlambat. Informasi yang sudah usang tidak akan mempunyai nilai lagi karena informasi merupakan landasan dalam pengambilan keputusan 3. Relevan (relevance) Informasi tersebut mempunyai manfaat untuk pemakainya. 2.6
Pengertian Sistem Informasi Menurut Tata Sutabri (2012:46) Sistem informasi adalah suatu sistem di
dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi operasi organisasi yang bersifat manjerial dengan kegiatan strategi dari suatu organisasi untuk dapat menyediakan kepada pihak luar tertentu dengan laporan-laporan yang diperlukan.
http://digilib.mercubuana.ac.id/
Menurut J. Satzinger – R. Jackson – S. Burd (2010:6) Sistem informasi adalah kumpulan komponen yang saling terkait yang mengumpulkan, memproses, menyimpan, dan menyediakan sebagai output informasi yang diperlukan untuk menyelesaikan tugas bisnis.
Menurut Stairs dan Renold (2010:10) “Sistem informasi sebagai seperangkat elemen atau komponen yang saling terkait yang dikumpulkan (input), memanipulasi (process), menyimpan, dan menyebarkan (output) data dan informasi, dan memberikan reaksi korektif (feedback) untuk memenuhi tujuan”. Komponen dari sistem informasi yaitu:
Input, merupakan aktivitas mengumpulkan dan mencatat fakta-fakta mentah.
Proses, merupakan kegiatan konversi atau mengubah data menjadi output yang berguna. Proses dapat mencakup membuat kalkulasi, membandingkan data, mengambil tindakan alternatif dan menyimpan data untuk penggunaan di masa yang akan datang.
Output, menghasilkan informasi yang berguna, biasanya dalam bentuk dokumen atau laporan.
feedback, merupakan informasi dari sistem yang digunakan untuk membuat perubahan pada kegiatan input atau proses.
2.7 2.7.1
Analisa dan Perancangan Sistem Pengertian Analisa Sistem Menurut J. Satzinger – R. Jackson – S. Burd (2012:5) Analisa sistem adalah
proses untuk memahami dan menspesifikan ke dalam detail sebuah sistem informasi tentang apa yang harus dicapai. Menurut A. Denis – B.H. Wixom – R.M. Roth (2012:13) Analisa sistem adalah kegiatan yang berfokus untuk mengetahui siapa, apa, dimana dan kapan dari sebuah sistem, dimana kegiatan tersebut menghasilkan proposal sistem.
http://digilib.mercubuana.ac.id/
Menurut Rosa A.S – M. Shalahuddin (2013:18) Kegiatan analisa sistem adalah kegiatan untuk melihat sistem yang sudah berjalan, melihat bagaimana yang bagus dan tidak bagus, dan kemudian mendokumentasikan kebutuhan yang akan dipenuhi dalam sistem yang baru.. Pada banyak proyek sistem informasi, proses analisis dan desain seringkali berjalan bersama-sama.Jadi selama kegiatan analisis, kegiatan desain juga dilakukan.Hal ini dilakukan karena pada banyak kasus, user sering kesulitan untuk mendifinisikan kebutuhan mereka. Jadi mereka akan lebih mudah mendefinisikan kebutuhan sistem yang mereka inginkan, jika mereka telah melihat gambar rancangan sistem yang baru, khususnya rancangan antarmuka.
2.7.2
Pengertian Perancangan Sistem Menurut J. Satzinger – R. Jackson – S. Burd (2012:5) Perancangan sistem terdiri
dari kegiatan-kegiatan yang memungkinkan seseorang untuk menggambarkan kebutuhan sistem secara rinci. Perancangan sistem menentukan secara rinci semua komponen dari sistem solusi dan bagaimana merekabekerja sama untuk memberikan solusi yang diinginkan. Menurut Rosa A.S – M. Shalahuddin (2013:23) Perancangan sistem merupakan upaya untuk mengkonstruksi sebuah sistem yang memberikan kepuasan (mungkin informal) akan spesifikasi kebutuhan secara implisit atau eksplisit dari segi performansi maupun penggunaan sumber daya, kepuasan batasan pada proses desain dari segi biaya, waktu, dan perangkat. Kualitas perangkat lunak biasanya dinilai dari segi kepuasan pengguna perangkat lunak terhadap perangkat lunak yang digunakan. Adapun tujuan yang hendak dicapai dari tahap perancangan sistem adalah sebagai berikut :
1. Untuk memenuhi kebutuhan pemakai sistem (user). 2. Untuk memberikan gambaran yang jelas dan menghasilkan rancang bangun yang lengkap kepada pemograman komputer dan ahli-ahli tekhnik lainnya yang telibat dalam pengembangan atau pembuatan sistem.
http://digilib.mercubuana.ac.id/
2.8
Software Development Life Cycle (SDLC) SDLC dimulai dari tahun 1960-an, untuk mengembangkan sistem skala usaha
besar secara fungsional untuk para konglomerat pada jaman itu.Sistem-sistem yang dibangun mengelola informasi kegiatan dan rutinitas dari perusahaan-perusahaan yang berpotensi memiliki data yang besar dalam perkembangannya. Menurut A. Denis – B.H. Wixom – R.M. Roth (2012:32) System Development Life Cycle (SDLC)adalah proses yang menentukan bagaimana suatu sistem informasi (SI) dapat mendukung kebutuhan bisnis, merancang sistem, membangun sistem dan memberikan sistem kepada pengguna. Menurut A. Denis – B.H. Wixom – R.M. Roth (2012:34) Orang yang bertanggung jawab dalam pengembangan sistem informasi adalah sistem analis dimana seorang sistem analis harus mampu menganalisa proses bisnis, mengidentifikasi kebutuhan serta desain sistem. Sistem analis memainkan peran penting dalam proyekproyek pengembangan sistem informasi. Sistem analis bekerja sama dengan semua anggota tim proyek sehingga bisa mengembangkan sistem secara tepat dan efektif. Sistem analis harus memahamibagaimana menerapkan teknologi untuk memecahkan masalah bisnis. Menurut J. Satzinger – R. Jackson – S. Burd (2010:38)System Development Life Cycle (SDLC)adalah Seluruh proses dari membangun, menyebarkan, menggunakan, dan memperbarui sistem informasi. Menurut Rosa A.S–M. Shalahuddin (2013:26) Software Development Life Cycle (SDLC) adalah proses mengembangkan atau mengubah suatu sistem perangkat lunak dengan menggunakan model-model dan metodologi yang digunakan orang untuk mengembangkan sistem-sistem perangkat lunak sebelumnya (berdasarkan best practice atau cara-cara yang sudah teruji baik). Seperti halnya proses metamorfosis pada kupu-kupu, untuk menjadi kupu-kupu yang indah maka dibutuhkan beberapa tahap untuk dilalui, sama halnya dengan membuat perangkat lunak, memiliki daur tahapan yang dilalui agar menghasilkan perangkat lunak yang berkualiatas.
Gambar 2.1 System Development Life Cycle (A. Denis, dkk : 2012)
http://digilib.mercubuana.ac.id/
2.8.1
Model SDLC (Model Waterfall)
Gambar 2.2 Waterfall Development (A. Denis, dkk : 2012) SDLC memiliki beberapa model dalam penerapan tahapan prosesnya. Model Gambar 2.2 Waterfall Development (A. Denis, dkk : 2012) SDLC air terjun (waterfall) menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisa desain, pengodean, pengujian, dan tahap pendukung (support).
Ada 4 (empat) tahapan SDLC menurut A. Denis – B.H. Wixom – R.M. Roth (2012:13) adalah :
Perencanaan (planning) Tahap perencanaan adalah proses dasar memahami mengapa sistem informasi harus dibangun dan menentukan tim proyek.
Analisis (analysis) Tahap analisis menjawab pertanyaan-pertanyaan tentang siapa yang akan menggunakan sistem, apa yang akan dilakukan, di mana dan kapan akan digunakan. Selama fase ini, tim proyek menganalisa sistem yang sedang berjalan, mengidentifikasi peluang perbaikan, dan mengembangkan konsep untuk sistem yang baru. Perancangan (design) Tahap desain memutuskan bagaimana sistem akan beroperasi dalam hal perangkat keras,software, dan infrastruktur jaringan yang ada, user interface, form,laporan
http://digilib.mercubuana.ac.id/
yang akan digunakan dan spesifikasi program, database, dan file yangakan dibutuhkan. Meskipun sebagian besar keputusan strategis tentang sistem dibuatdalam pengembangan konsep sistem selama tahap analisis, langkah-langkah dalamtahap desain menentukan dengan tepat bagaimana sistem akan beroperasi. Implementasi (Implementation)
Tahap akhir adalah tahap implementasi, dimana sistem ini benar-benar dibangun (atau dibeli, dalam hal desain perangkat lunak dikemas dan diinstal). Ini adalah fase yang mendapat perhatian besar karena pada fase ini adalah terpanjang dan paling mahal dari proses pembangunan sistem itu sendiri. Fase ini memiliki tiga tahap : 1. Kontruksi sistem Sistem ini dibangun dan diuji untuk memastikan bahwa ia melakukan seperti yang dirancang. Karena biaya memperbaiki bug bisa sangat besar, pengujian adalah salah satu langkah yang paling penting dalam implementasi. Sebagian besar organisasi menghabiskan lebih banyak waktu dan perhatian pada pengujian daripada menulis program. 2. Instalasi sistem Instalasi adalah proses dimana sistem lama dimatikan dan yang baru dihidupkan. Ada beberapa pendekatan yang mungkin digunakan untuk mengkonversi dari sistem lama ke sistem baru.Salah satu yang paling penting dari aspek konversi adalah rencana pelatihan, digunakan untuk mengajar pengguna bagaimana menggunakan sistem baru dan membantu mengelola perubahan yang disebabkan oleh sistem baru. 3. Menetapkan rencana dukungan untuk sistem. Rencana ini biasanya mencakup review formal atau informal pasca-pelaksanaan, serta dengan cara yang sistematis mengidentifikasi perubahan besar dan kecil yang diperlukan sistem. 2.9
Konsep Dasar Berorientasi Objek Menurut A. Denis – B.H. Wixom – R.M. Roth (2012:510) Sistem berorientasi objek berfokus pada menangkap struktur dan perilaku dari sistem
http://digilib.mercubuana.ac.id/
informasi dalam modul kecil yang mencakup baik data maupun proses. Modulmodul kecil ini dikenal sebagai objek. Menurut Rosa A.S – M. Shalahuddin (2013:103) Pendekatan berorientasi objek merupakan suatu teknik atau cara pendekatan dalam melihat permasalahan dan sistem (sistem perangkat lunak, sistem informasi, atau sistem lainnya). Pendekatan berorientasi objek akan memandang sistem yang akan dikembangkan sebagai suatu kumpulan objek yang berkorespondensi dengan objek-objek dunia nyata. Berikut ini adalah beberapa konsep dasar yang harus dipahami tentang metodologi berorientasi objek :
Kelas (class) Kelas adalah kumpulan objek-objek dengan karakteristik yang sama. Kelas merupakan definisi static dan himpunan objek yang sama yang mungkin lahir atau diciptakan dari kelas tersebut. Sebuah kelas akan mempunyai sifat (atribut), kelakukan (operasi/metode), hubungan (relationship) dan arti. Suatu kelas dapat diturunkan dari kelas yang lain, dimana atribut dari kelas semula dapat diwariskan ke kelas yang baru.
Objek (object) Objek adalah abstraksi dan sesuatu yang mewakili dunia nyata seperti benda, manusia, satuan organisasi, tempat, kejadian, struktur, status, atau hal-hal lain yang bersifat abstrak.Objek merupakan suatu entitas yang mampu menyimpan informasi (status) dan mempunyai operasi (kelakuan) yang dapat diterapkan atau dapat berpengaruh pada status objeknya.Objek mempunyai siklus hidup yaitu diciptakan, dimanipulasi dan dihancurkan.
Metode (method) Operasi atau metode dan method pada sebuah kelas hampir sama dengan fungsi atau prosedur pada metodologi structural. Sebuah kelas boleh memiliki lebih dari satu metode atau operasi yang berfungsi untuk memanipulasi objek itu sendiri. Operasi atau metode merupakan fungsi atau transformasi yang dapat dilakukan terhadap objek atau dilakukan oleh objek.
http://digilib.mercubuana.ac.id/
Pewarisan (inheritance) Mekanisme yang memungkinkan satu objek mewarisi sebagian atau seluruh definisi dan objek lain sebagai bagian dan dirinya.
Enkapsulasi (encapsulation) Pembungkusan atribut data dan layanan (operasi-operasi) yang dipunyai objek untuk menyembunyikan implementasi dan objek sehingga objek lain tidak mengetahui cara kerja-nya.
Atribut (attribute) Atribut dari sebuah kelas adalah variabel global yang dimiliki sebuah kelas.Atribut dapat berupa nilai atau elemen-elemen data yang dimiliki oleh objek kelas objek.
Abstraksi (abstraction) Prinsip untuk mempresentasikan dunia nyata yang kompleks menjadi satu bentuk model yang sederhana dengan mengabaikan aspek lain yang tidak sesuai dengan permasalahan.
Polimorfisme (polymorphism) Kemampuan suatu objek untuk digunakan dibanyak tujuan yang berbeda dengan nama yang sama sehingga menghemat baris program.
2.10 Analisa Berorientasi Objek Menurut Rosa A.S – M. Shalahuddin (2013:114) Analisa berorientasi objek adalah tahapan untuk menganalisa spesifikasi atau kebutuhan akan sistem yang akan dibangun dengan konsep berorientasi objek, apakah benar kebutuhan yang ada dapat diimplementasikan menjadi sebuah sistem berorientasi objek. Menurut Windu Gata – Grace Gata (2013:3) Analisa berorientasi objek merupakan
pendekatan
rekayasa
perangkat
lunak
didalamnya merupakan interaksi objek.
http://digilib.mercubuana.ac.id/
dimana
model-model
2.11 Pengertian UML Menurut Rosa A.S – M. Shalahuddin (2013:137) UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung. UML muncul karena adanya kebutuhan pemodelan visual untuk menspesifikasikan, menggambarkan, membangun, dan dokumentasi dari sistem perangkat lunak. Menurut Windu Gata – Grace Gata (2013:4) UML adalah bahasa spesifikasi yang
standar
dipergunakan
untuk
mendokumentasikan,
menspesifikasikan
dan
membangun perangkat lunak. Menurut J. Satzinger – R. Jackson – S. Burd (2012:46)UML adalah standar himpunan model konstruksi dan notasi yang dikeluarkan oleh Object Management Group (OMG), sebuah organisasi standar untuk pengembangan sistem. Dengan menggunakan UML, analis dan pengguna akhir dapat menggambarkan dan memahami berbagai diagram khusus yang digunakan dalam proyek pengembangan sistem. Menurut A. Denis – B.H. Wixom – R.M. Roth (2012:513) Tujuan dari penciptaan UML (Unified Modeling Language) adalah untuk Pada perkembangan teknik pemrograman berorientasi objek, muncullah sebuah standarisasi bahasa pemodelan untuk pembangunan sistem yang dibangun dengan menggunakan teknik pemrograman berorietasi objek, yaitu Unified Modelling Language (UML). UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan sistem yang besar dan kompleks. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan. Definisi Unified Modelling Language (UML) adalah sebuah “bahasa” yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak.Versi terbaru dari UML yaitu UML versi 2.0 terdiri dari empat belas teknik diagram untuk memodelkan sistem. Diagram tersebut dibagi menjadi dua kelompok utama yaitu Structure Diagrams dan Behavioral Diagrams(Alan Dennis, 2009:29). Structure
Diagrams
yaitu
kumpulan
diagram
yang
digunakan
untuk
menggambarkan suatu struktur statis dari sistem yang dimodelkan, sedangkan Behavioral Diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi pada sebuah sistem.
http://digilib.mercubuana.ac.id/
Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan sintaks. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak dan UML 2.0 terdiri dari 14 jenis diagram resmi yang dapat dilihat pada table berikut: Tabel 2.1 Jenis-jenis diagram UML(Alan Dennis, 2009:30). Diagram
Kegunaan
Structure Diagrams Class
untuk memodelkan struktur kelas
Object
untuk memodelkan struktur object
Package
untuk mengelompokkan elemen-elemen UML dalam tingkatan unit yang lebih tinggi.
Deployment
untuk menunjukkan tata letak sebuah sistem secara fisik, menampakkan bagian-bagian software yang berjalan pada bagian-bagian
hardware
yang
digunakan
untuk
mengimplementasikan sebuah sistem dan keterhubungan antara komponen-komponen hardware tersebut Component
untuk memodelkan komponen object.
Composite Structure
untuk menunjukkan dekomposisi secara hierarkis sebuah class ke sebuah struktur internal.
Behavioral Diagrams Activity
untuk memodelkan perilaku Use Cases dan objects di dalam system
Sequence
untuk memodelkan pengiriman pesan (message) antar objects
Communication
menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masingmasing objek dan bukan pada waktu penyampaian message pencangkokan secara bersama antara activity diagram
Interaction Overview
dengan sequence diagram Timing
untuk menunjukkan faktor pembatas waktu diantara perubahan state pada objek yang berbeda
Behavioral State Machine
untuk mendefinisikan perilaku sebuah object
Protocol State Machine
digunakan untuk penggunaan protocol pada sebuah sistem
http://digilib.mercubuana.ac.id/
2.11.1 Sejarah UML Banyaknya metodologi-metodologi yang berkembang pesat, munculah ide untuk membuat sebuah bahasa yang dapat dimengerti semua orang.Usaha penyatuan ini banyak mengambil dari metodologi-metodologi yang berkembang saat itu. Maka dibuat bahasa yang merupakan gabungan dari beberapa konsep seperti konsep Object Modelling Technique (OMT) dari Rambaugh dan Booch (1991), konsep The Classes, Responsibilities, Collaborators (CRC) dari Rebecca Wirfs-Brock (1990), konsep pemikiran Ivar Jacobson, dan beberapa konsep lainnya dimana James R. Rumbaigh, Grady Booch, dan Ivar Jacobson bergabung dalam sebuah perusahaan yang bernama Rational Software Corporation menghasilkan bahasa yang disebut dengan Unified Modeling Language (UML). Pada 1996, Object Management Group (OMG) mengajukan proposal agar adanya standarisasi pemodelan berorientasi objek pada bulan September 1997 UML diakomodasi oleh OMG sehingga sampai saat ini UML telah memberikan kontribusinya yang cukup besar didalam metodologi berorientasi objek dan hal-hal yang terkait didalamnya.
2.11.2 Diagram UML Pada UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan dalam 3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat dilihat pada gambar dibawah.
http://digilib.mercubuana.ac.id/
UML 2.3 Diagram
Structure Diagram
Behaviour Diagram
Behaviour Diagram
Class Diagram
Use Case Diagram
Sequence Diagram
Object Diagram
Activity Diagram
Communication Diagram
Component Diagram
State Machine Diagram
Timing Diagram
Composite Structure Diagram
Interaction Overview Diagram
Package Diagram
Deployment Diagram
Gambar 2.3 Diagram UML (Alan Denis, 2009:45). menyediakan kosakata umum berbasis objek dan diagram teknik yang cukup efektif untuk memodelkan setiap proyek pengembangan sistem mulai tahap analisis sampai tahap desain dan implementasi. Beberapa literature menyebutkan bahwa UML menyediakan Sembilan jenis diagram. Namun kesembilan diagram ini tidak mutlak harus digunakan dalam pengembangan perangkat lunak, semuanya dibuat sesuai dengan kebutuhan. Diagram yang sering digunakan adalah
diagramuse case, diagram aktivitas
(Activity Diagram), diagram sequence dan diagram class.
http://digilib.mercubuana.ac.id/
2.12 User Case Diagram Menurut A. Denis – B.H. Wixom – R.M. Roth (2012:147) Use Case digunakan
untuk
menjelaskan
dan
mendokumentasikan
interaksi
yang
diperlukanantara pengguna dan sistem untuk menyelesaikan tugas pengguna. Use Case diciptakan untuk membantu tim pengembangan lebih memahami langkahlangkah yang terlibat dalammencapai tujuan pengguna. Berikut ini adalah simbol-simbol yang ada pada use case diagram, yaitu :
Tabel 2.2 Simbol Use Case (A. Denis, dkk : 2012)
http://digilib.mercubuana.ac.id/
Gambar 2.3Contoh Use Case (A. Denis, dkk : 2012) Gambar 2.4 Contoh Use Case (A. Denis, dkk : 2012) 2.12.1 Activity Diagram Menurut J. Satzinger – R. Jackson – S. Burd (2010:141)Activity Diagram merupakan sebuah diagram alur kerja yang menggambarkan berbagai pengguna (atau sistem) kegiatan, orang yang melakukan setiap kegiatan, dan aliran sekuensial kegiatan. Activity diagram adalah salah satu dari Unified Modeling Language (UML) diagram yang terkait dengan pendekatan berorientasi obyek, tetapi dapat digunakan dengan pendekatan pengembangan. Berikut adalah symbol-simbol yang ada pada diagram aktivitas :
http://digilib.mercubuana.ac.id/
Tabel 2.3 Simbol Activity Diagram (Rosa A.S, dkk: 2013)
http://digilib.mercubuana.ac.id/
Gambar 2.5 Contoh Activity Diagram (J. Satzinger, dkk : 2012)
2.12.2 Sequence Diagram Menurut A. Denis – B.H. Wixom – R.M. Roth (2012:530) Sequence Diagram merupakan penggambaran objek – objek yang berpartisipasi dalam use casedan pesan yang melewati antara objek dari waktu ke waktu untuk satu use case. Sequence Diagram adalah model penggambaran sistem yang lebih dinamis dan menunjukkan secara eksplisit urutan pesan yang lewat diantara interaksi objek.Sequencemenekankan pemesanan berbasis waktu kegiatan yang terjadi diantara satu objek dan sangat membantu untuk memahami spesifikasi real-time dan use case yang kompleks. Berikut adalah simbol-simbol yang ada pada diagram sekuen :
http://digilib.mercubuana.ac.id/
Tabel 2.4 Simbol Sequence Diagram (A. Denis, dkk : 2012)
http://digilib.mercubuana.ac.id/
Gambar 2.6 Contoh Sequence Diagram (A. Denis, dkk : 2012
2.12.3 Class Diagram 3.1.1
1.1 Use Case Diagram Sebuah use case diagram menggambarkan secara sederhana fungsi-fungsi utama
dari sistem dan berbagai user yang akan berinteraksi dengan sistem tersebut (Alan Dennis, 2009:173).
http://digilib.mercubuana.ac.id/
Tabel 2.5 Simbol Use Case Diagram (Alan Dennis, 2009:174).
Nama Elemen
Fungsi
Notasi
Actor
Menggambarkan tokoh atau sistem yang memperoleh keuntungan dan berada di luar dari sistem. Actor dapat berasosiasi dengan
actor
lainnya
dengan
menggunakan specialization/superclass association. Actor ditempatkan di luar subject boundary. Use Case
Mewakili
sebuah
bagian
dari
fungsionalitas sistem dan ditempatkan dalam system boundary. Subject
Menyatakan lingkup dari subjek
Boundary Assosiation
Menghubungkan
untuk
Relationship
berinteraksi dengan use case
Include
Menunjukkan inclusion fungsionalitas
Relationship
dari sebuah use case dengan use case
actor
lainnya. Arah panah dari base use case ke included use case Extend
Menunjukkan extension dari sebuah use
Relationship
case
untuk
menambahkan
optional
behavior. Arah panah dari extension use case ke base use case Generalization
Menunjukkan generalisasi dari use case
Relationship
khusus ke yang lebih umum
http://digilib.mercubuana.ac.id/
Gambar 2.7 Use Case Model (Alan Dennis, 2009:177).
2.13
SDLC (Software Development Life Cycle) (Rosa dan Shalahuddin, 2013:26) SDLC atau Software Development Life Cycle
atau yang sering disebut juga System Development Life Cycle adalah proses pengembangan atau mengubah suatu sistem perangkat lunak degan menggunakan modelmodel dan metodologi yang digunakan orang untuk mengembangkan sistem-sistem perangkat lunak sebelumnya (berdasarkan best practice atau cara-cara yang sudah teruji baik). Analisis dan desain sering dikelompokkan sebagai proses sistem/rekayasa informasi karena pada tahapan inilah informasi mengenai kebutuhan perangkat lunak banyak dikumpulkan dan diintegrasikan. Ada beberapa model SDLC yang dapat digunakan, yaitu Model Waterfall, ModelPrototipe dan Model Rapid Application Development (RAD). Semuanya memiliki kelemahan dan kelebihan pada setiap model SDLC. Hal terpenting adalah mengenali tipe pelanggan (customer) dan memilih menggunakan model SDLC yang sesuai dengan karakter pelanggan (customer) dan sesuai dengan karakter pengembang.Penulis menggunakan salah satu model SDLC yaitu Model Waterfall.
http://digilib.mercubuana.ac.id/
2.13.1 Model Waterfall (Rosa dan Shalahuddin, 2013:28) Model SDLC air terjun (waterfall) sering juga disebut model sekuensial linier (sequential linear) atau alur hidup klasik (classic life cycle). Model air tejun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengkodean, pengujian, dan tahap pendukung (support). Berikut adalah gambar model air terjun: Sistem / Rekayasa Informasi Siste Analisis
Desain
Pengkodean
Pengujian
Gambar 2.8 Ilustrasi Model Sekuensial Linier (Rosa dan Shalahuddin, 2013:29)
1.
Analisis kebutuhan perangkat lunak Proses pengumpulan kebutuhan dilakukan secara intensif untuk memspesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dibutuhkan oleh user. Spesifikasi kebutuhan perangkat lunak pada tahap ini perlu untuk didokumentasikan.
2.
Desain Desain perangkat lunak adalah proses multi langkah yang fokus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur perangkat lunak, representasi antarmuka, dan prosedur pengkodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya.Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan.
3.
Pembuatan kode program Desain harus ditranslasikan ke dalam program perangkat lunak.Hasil dari tahap ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap desain.
4.
Pengujian
http://digilib.mercubuana.ac.id/
Pengujian fokus pada perangkat lunak secara segi logik dan fungsional dan memastikan bahwa semua bagian sudah diuji.Hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan.
5.
Pendukung (support) atau pemeliharaan (maintenance) Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan ketika sudah dikirimkan ke user.Perubahan bisa terjadi karena adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan dapat mengulangi proses pengembangan dimulai dari analisis spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru. Model waterfall adalah model SDLC yang paling sederhana.Model ini hanya cocok untuk pengembangan perangkat lunak dengan spesifikasi yang tidak berubah-ubah.
2.14
XAMPP (Widijanuarto, 2010:3) XAMPP merupakan sebuah aplikasi yang berisi PHP,
MySQL dan Apache yang diperlukan untuk melakukan instalasi CMS. Bahkan di dalam XAMPP terdapat pula FTP Server dan Email Server.Jadi, dengan aplikasi ini Anda bisa membangun sebuah website dengan lebih mudah tanpa perlu menginstal PHP, MySQL dan Apache sendiri-sendiri.Aplikasi ini bisa dijalankan pada sistem operasi Windows, Linux, Mac dan Solari.
Gambar 2.9 Tampilan Ruang Kerja XAMPP
http://digilib.mercubuana.ac.id/
2.15
MySQL (Structure Query Language) (Aditya, 2011:61) MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multiuser, dengan sekitar 6 juta instalasi diseluruh dunia. MySQL pertama kali dirintis oleh seorang programer database bernama Michael Widenius.MySQL adalah sebuah implementasi dari sistem manajemen basis data relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License).RDBMS dapat menangani data yang bervolume besar.Meskipun begitu, tidak menuntut resource yang besar.MySQL adalah database yang paling populer diantara database-database yang lainnya. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basis data yang telah ada sebelumnya; SQL (Structured Query Language).SQL adalah sebuah konsep pengoperasian basis data, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Kehandalan suatu sistem basis data (DBMS) dapat diketahui dari cara kerja pengoptimasinya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai pelayan basis data, MySQL mendukung operasi basis data transaksional maupun operasi basis data non-transaksional.
2.16
Personal Home Page (PHP) (Master.com, 2012:5) PHP merupakan singkatan dari PHP Hypertext
Preprocessor yang digunakan sebagai bahasa script server-side dalam pengembahan web yang disisipkan pada dokumen HTML. 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. Karena penggunaan PHP memungkinkan web dapat dibuat dinamis, maintenance situs web tersebut menjadi lebih mudah dan efisien. PHP merupakan softwareOpenSource yang disebarkan dan dilisensikan secara gratis serta dapat di download secara bebas dari situs resminya. PHP ditulis menggunakan bahasa C.
http://digilib.mercubuana.ac.id/
2.17 Adobe Dreamweaver CS6 (Madcoms, 2013:1) Adobe Dreamweaver CS6adalah perangkat lunak terkemuka untuk desain web yang menyediakan kemampuan visual yang intuitif termasuk pada tingkat kode, yang dapat digunakan untuk membuat dan mengedit website HTML serta aplikasi mobile seperti smartphone, tablet dan perangkat lunak lainnya. Dengan adanya fitur layout Fluid Grid yang dirancang khusus untuk memungkinkan lintas platform, maka akan membuat layout menjadi adaptif atau dapat menyesuaikan dengan browser yang dipakai. Anda juga dapat melihat hasil sementara desain dengan fasilitas Multiscreen Preview yang telah mengalami banyak perubahan dan peningkatan fusionalitasnya. Kembali terjadinya
perang browser telah mempercepat pengembangan
web.Chrome, Firefox, Safari, dan Intenet Explore semuanya bersaing untuk memberikan browser, HTML5 tercepat dan paling kuat.Itu berarti Dreamweaver CS6 harus mendukung HTML terbaru, JavaScript dan fitur CSS (Casscoding Style Sheets) sambil menjaga kompleksitas minimum.Membangun halaman web modern membutuhkan perpaduan desain dan ketrampilan pemrograman, dan Adobe Dreamweaver CS6 harus mendukung khalayak yang beragam dari kedua desainer dan pengembang. Itu tugas yang sulit, karena keduanya memiliki kebutuhan yang berbeda, dan keduanya bekerja dengan cara yang sangat berbeda. Dengan ledakan didunia browsing yang terus bergerak, perubahan pada versi Dreamweaver CS6 sekarang lebih besar dari sebelumnya.Dreamweaver CS6 telah menambahkan tool baru untuk bekerja dengan situs dengan skala dari desktop, tablet, telepon, menggunakan beberapa fitur CSS terbaru (CSS3). Meskipun demikian, Dreamweaver masih akrab dengan campuran yang sama antara desain dan kode, dan dukungan untuk hampir semua teknologi web authoring, Dreamweaver menjadi web desain standar dan alat pengembangan untuk banyak organisasi, dan Dreamweaver CS6 dibutuhkan untuk merespon dengan cara web telah berubah, serta cara berubah. HTML5 masih berkembang, tapi banyak dari keluarga standarnya yang sudah digunakan.Itu sebabnya ada baiknya untuk melihat banyak CSS.
http://digilib.mercubuana.ac.id/
Gambar 2.10 Tampilan Ruang Kerja AdobeDreamweaver CS6
2.18
Metode Pengujian Sistem Jika struktur kendali antar modul sudah terbukti bagus, maka pengujian yang tak
kalah pentingnya adalah pengujian unit.Pengujian unit digunakan untuk menguji setiap modul untuk menjamin setiap modul menjalankan fungsinya dengan baik. Ada 2 metode untuk melakukan unit testing, yaitu: Black Box Testing dan White Box Testing.
2.18.1 Black Box Testing Menurut (Nidhra dan Dondeti, 2012:1), black box testing juga disebut functional testing, sebuah teknik pengujian fungsional yang merancang test case berdasarkan informasi dari spesifikasi.
http://digilib.mercubuana.ac.id/
2.18.2 White-Box Testing White-box testing yaitu metode desain test case yang menggunakan stuktur kontrol desain posedural unntuk memperoleh test case. Test case dapat diperoleh dengan:
1. Menjamin bahwa semua independet path pada suatu modul telah digunakan minimal satu kali 2. Menggunakan semua keputusan logis pada sisi true dan false. 3. Mengeksekusi semua loop dalam batasannya dan pada batas operasionalnya 4. Mengunakan struktur data internal untuk menjamin validitasnya
http://digilib.mercubuana.ac.id/