BAB II LANDASAN TEORI
2.1. Perusahaan Menurut ketentuan Pasal 1 huruf b UU nomor 3 tahun 1982 mengenai Wajib Daftar Perusahaan, yang dimaksud dengan perusahaan adalah setiap bentuk usaha yang menjalankan setiap jenis usaha yang bersifat tetap dan terus menerus dan yang didirikan, bekerja serta berkedudukan.dalam wilayah Negara Republik Indonesia untuk tujuan memperoleh keuntungan dan atau laba. Definisi dari perusahaan menurut ketentuan pemerintah tersebut diatas memuat 2 unsur utama, yaitu (Kementrian Perdagangan Republik Indonesia, 2002):
2.1.1. Bentuk Usaha Yaitu perusahaan yang berupa organisasi atau badan usaha yang didirikan dan berkedudukan dalam wilayah Negara Indonesia. Bentuk usaha yang terdapat di Indonesia adalah (Kementrian Perdagangan Republik Indonesia, 2002): 1. BUMN BUMN adalah Badan Usaha Milik Negara, yaitu perusahaan atau badan usaha yang dimiliki oleh pemerintah yang berbentuk Perusahaan Perseroan (PERSERO) sebagaimana dimaksud dalam Peraturan Pemerintah Nomor 12 Tahun 1998 dan Perusahaan Umum (PERUM) sebagaimana dimaksud dalam Peraturan Pemerintah Nomor 13 Tahun 1998. 2. BUMS BUMS adalah suatu badan usaha yang dimiliki dan dikelola oleh pihak swasta.
http://digilib.mercubuana.ac.id/
3. Koperasi Koperasi
adalah
badan
hukum
yang
berdasarkan atas asas kekeluargaan yang anggotanya terdiri dari orang perorangan atau badan hukum dengan tujuan untuk mensejahterakan anggotanya. Sedangkan menurut Hatta (Bapak Koperasi Indonesia) Koperasi adalah usaha bersama untuk memperbaiki nasib penghidupan ekonomi berdasarkan tolongmenolong.
Semangat
tolong
menolong
tersebut
didorong oleh keinginan memberi jasa kepada kawan berdasarkan “seorang buat semua dan semua buat seorang”.
2.1.2. Jenis Usaha Perusahaan yang berupa kegiatan dibidang perekonomian yang dijalankan oleh suatu badan usaha secara terus menerus. Jenis perusahaan tersebut sendiri dapat dibagi menjadi 5 kategori, yaitu (Kementrian Perdagangan Republik Indonesia, 2002): 1. Perusahaan Ekstraktif Adalah perusahaan yang menggali hasil bumi secara langsung, perusahaan yang termasuk didalam Perusahaan
Ekstraktif
adalah
pertambangan,
penagkapan ikan, penebangan kayu, pembuatan garam, dan lain sebagainya yang memungut atau mengambil hasil bumi secara langsung. 2. Perusahaan Agraris Perusahaan Agraris adalah perusahaan yang kegiatan atau usahanya mengolah serta memanfaatkan tanah agar menjadi lahan yang menghasilkan sesuatu untuk memenuhi kebutuhan manusia, sebagai contoh yaitu
pertanian,
perkebunana,
penagkaran ikan.
http://digilib.mercubuana.ac.id/
peternakan,
serta
3. Perusahaan Industri Perusahaan Industri adalah perusahaan yang menglah suatu bahan mentah menjadi bahan jadi atau bahan setengah jadi (bahan baku), atau perusaha yang mengolah bahan baku menjadi bahan jadi, sebagai contoh yaitu perusahaan kerajinan rotan, perusahaan tepung terigu, perusahaan mobil, perusahaan pupuk, obat-obatan, serta perusahaan sepatu. 4. Perusahaab Perdagangan Perusahaan Perdagangan adalah perusahaan yang usaha atau kegiatannya mengumpulkan dan kemudian menyalurkan barang dari hasil produksi kepada konsumen, contohnya yaitu pertokon serta perdagangan ekspor dan impor. 5. Perusahaan Jasa Perusahaan Jasa adalah perusahaan yang usahanya
menyelenggarakan
jasa
untuk
para
konsumen dengan memperoleh imbalan, sebagai contoh yaitu perusahaan pengangkutan barang, jasa bank,
jasa
pergudangan,
jasa
kedokteran,
dan
sebagainya.
2.2. Persediaan Setiap
perusahaan
yang
menyelenggarakan
atau
tidak
menyelenggarakan suatu kegiatan produksi akan memerlukan persediaan bahan baku baik itu bahan baku produksi atau persediaan bahan lainnya guna kalangsungan kegiatan usaha yang dilakukan didalam perusahaan tersebut. Dengan tersedianya persediaan tersebut maka perusahaan dapat terus menjalankan kegiatan usahanya yaitu kegiatan untuk memenuhi kebutuhan atau permintaan konsumen. Selain itu dengan adanya persediiaan yang tersedia cukup di dalam gudang juga diharpakan dapat
http://digilib.mercubuana.ac.id/
memperlancar kegiatan didalam suatu perusahaan serta dapat menghindari terjadinya kekurangan bahan baku atau persediaan lainnya. Keterlambatan jadwal pemenuhan produk yang dipesan konsumen dapat merugikan perusahaan dalam hal ini image perusahaan menjadi kurang baik, dan dapat membuat konsumen berpindah untuk mencari jasa dari perusahaan lain. Persediaan juga dapat diaartikan sebagai sumber daya yang menganggur, sumber daya menganggur adalah sumber daya yang belum digunakan karena menunggu proses lebih lanjut. Menunggu proses lebih lanjut yaitu dapat berupa kegiatan produksi pada sistem manufaktur, kegiatan pemasaran, maupun kegiatan konsumsi pada sistem rumah tangga.
2.2.1. Definisi Persediaan Persediaan
diterjemahkan
dari
“inventory”
yang
merupakan timbunan barang (bahan baku, komponen, produk setengah jadi, atau produk jadi) yang secara sengaja disimpan sebagai cadangan (safety atau buffer-stock) untuk manghadapi kelangkaan pada saat proses produksi sedang berlangsung. Persediaan dapat diartikan sebagai barang-barang yang disimpan untuk digunakan atau dijual pada masa atau periode yang akan datang. Persediaan adalah aktiva berwujud yang diperoleh perusahaan untuk dijual kembali dalam kegiatan normal erusahaan dan diperoleh untuk diproses lebih dulu dan dijual. Persediaan terdiri dari persediaan bahan baku, persediaan bahan setengah jadi dan persediaan barang jadi. Persediaan bahan baku dan bahan setengah jadi disimpan sebelum digunakan atau dimasukkan ke dalam proses produksi, sedangkan persediaan barang jadi atau barang dagangan disimpan sebelum dijual atau dipasarkan. Dengan demikian setiap perusahaan yang melakukan kegiatan usaha umumnya memiliki persediaan. Menurut (Rifai, Sarno, & Sunaryono, 2011) manajemen persediaan yang baik sangatlah penting di dalam sebuah
http://digilib.mercubuana.ac.id/
perusahaan, karena dapat menekan biaya pengeluaran. Selain dapat menekan biaya pengeluaran, persediaan yang baik dapat membantu untuk mempercepat kinerja perusahaan. Perusahaan dapat menekan biaya dengan mengurangi persediaan namun dengan konsekuensi kegiatan produksi dapat berhenti atau pelanggan menjadi tidak puas pada saat barang tidak tersedia. Dapat disimpulkan bahwa persediaan yang baik sangat menentukan kelangsungan kegiatan didalam sebuah perusahaan.
2.2.2. Jenis-jenis Persediaan Menurut (Siska & Syafitri, 2012)Perusahaan memiliki jenis persediaan barang yang berbeda-beda, dan dapat dibedakan menurut sifat serta tujuannya, yaitu : a. Persediaan barang pada Perusahaan Manufaktur, jenisjenis persediaan barang pada perusahaan manufaktur adalah : persediaan bahan baku, persediaan barang proses, persediaan barang pendukung, persediaan barang jadi (siap dijual). b. Persediaan barang pada Perusahaan Dagang, perusahaan dagang memiliki jenis barang yang terdiri dari : persediaan
perlengkapan
dan
persediaan
barang
dagangan.
2.2.3. Fungsi Persediaan Menurut (Kot, Grondys, & Szopa, 2011) persediaan memiliki arti dan fungsi yang sangat penting bagi perusahaan. Berbagai macam barang yang ada seperti bahan baku, barang dalam proses, dan persediaan barang jadi. Beberapa alasan mengapa perlu diadakannya persediaan adalah : a. Agar perusahaan dapat memenuhi pesanan pelanggan secara cepat dan tepat waktu, karena jika suatu perusahaan tidak memiliki persediaan maka perusahaan tersebut tidak
http://digilib.mercubuana.ac.id/
dapat memenuhi kebutuhan klien, dan kemungkinan besar klien akan berpindah ke tempat yang lain. b. Untuk bersiap ketika barang di pasar sedang sulit untuk diperloeh, terselebih jika barang tersebut adalah jenis barang musiman, maka perusahaan wajib untuk membuat persediaan untuk barang tersebut dan menyimpannya. c. Menekan harga pokok per barang, dengan membeli barang dalam jumlah banyak sehingga biaya per barang akan ditekan atau biasa disebut dengan economics of scale.
2.2.4. Metode Penanganan Persedian Dalam penanganan persediaan barang, secara umum dapat dilakukan dengan beberapa metode, yaitu : 1. First In First Out (FIFO), yaitu barang yang lebih awal masuk yang dikeluarkan kali pertama sehingga saldo akhir persediaan ini menunjukkan barang yang dibeli terakhir. 2. Last In Fist Out (LIFO), yaitu barang yang lebih akhir masuk yang dikeluarkan kali pertama sehingga saldo akhir persediaan ini menunjukkan barang yang dibeli terawal.
Menurut(Anwar & Karamoy, 2014) berdasarkan metode FIFO diatas, dalam metode FIFO barang yang masuk pertama juga akan dikeluarkan untuk pertama kali juga, namun tanpa memperhatikan masa kadaluarsa dari barang tersebut. Berdasarkan asumsi tersebut, PT. Tirta Investama DC Manado menamai persediaan barang mereka dengan FEFO (First Expired, Firt Out). Dengan menggunakan metode FEFO, barang yang terlebih dahulu mencapai atau mendekati masa kadaluarsa maka barang tersebut akan dikeluarkan terlebih dahulu.
http://digilib.mercubuana.ac.id/
2.3. Sistem Informasi Definisi Sistem informasi menurut para ahli :
Menurut Mc Leod, Sistem informasi adalah suatu sistem yang mampu untuk mengumpulkan informasi dari sumber yang adakemudian menggunakan berbagai media untuk menampilkan informasi dari data tersebut.
Menurut Tata Sutabri, Kom., MM., Sistem informasi adalah suatu sistem dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi manajerial organisasi dalam kegiatan strategis dari suatu organisasi untuk dapat menyediakan kepada pihak luar tertentu dengan laporan – laporan yang diperlukan.
Menurut Erwan Arbie, Sistem informasi adalah suatu sistem dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, bantuan dan dukungan operasi, bersifat manajerial dari suatu organisasi dan membantu memfasilitasi penyediaan laporan yang diperlukan.
2.3.1. Definisi Sistem Sistem adalah kombinasi atas beberapa komponen yang bekerja secara bersamaan salam melakukan suatu pekerjaan tertentu, komponen tersebut dapat berdiri sendiri maupun atau berupa komponen yang saling berkesinambungan antara satu sama lain. Komponen utama dari sistem adalah :
1Gambar 2.1 Komponen Utama Sistem
http://digilib.mercubuana.ac.id/
-
Input adalah komponen masukan yang berupa data atau informasi yang nantinya akan diproses.
-
Proses adalah sebuah operasi atau kegiatan memproses sutau data atau informasi dengan secara berurutan dan kemudian menghasilkan sesuatu atau keadaan tertetu.
-
Output adalah hasil perubahan yang terjadi akibat proses yang telah dilakukan dan berawal dari sebuah input.
2.3.2. Pengertian Informasi Menurut (Ginting, 2013) informasi merupakan data yang telah diolah sehingga menjadi sebuah bentuk yang berarti dan bermanfaat, terutama untuk pengambilan sebuah keputusan untuk saat ini atau di masa yang akan datang. Kualitas dari sebuah informasi dapat dilihat dari beberapa aspek dibawah ini, yaitu sebuah informasi harus :
Akurat
Relevan
Ketersediaan
Mudah dipahami
Bermanfaat
Handal
Konsisten
Sehingga dari pengertian tersebut dapat disimpulkan bahwa sistem informasi adalah sistem yang dibuat untuk mengolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya dalam membuat keputusan yang tepat.
http://digilib.mercubuana.ac.id/
2.4. Pengembangan Sistem Informasi 2.4.1. SDLC (System Development Life Cycle) Menurut (Dennis, Wixom, & Roth, 2012), SDLC adalah suatu proses berkelanjutan dari planning, analisis, desain dan implementasi. Yang pada setiap prosesnya dilakukan perbaikan secara bertahap. Sedangkan menurut (Ateeq & Shuaib, 2014) SDLC sangat penting dalam pengembangan perangkat lunak yaitu dengan cara yang sistematis dan disiplin. SDLC memberikan pedoman teoritis dalam pengembangan perangkat lunak. SDLC adalah sebuah sistem atau cara yang dibuat untuk membantu mengembangkan atau membuat sistem informasi agar lebih efisien dan sistematis, dan berkelanjutan dari planning, analisa edsain, dan hingga pada tahap implementasi.
2.4.2. Agile Software Development Menurut
(Proboyekti,
2012)
agile
merupakan jenis
pegembangan sistem jangka pendek yang memerlukan adaptasi cepat oleh pengembang atau developer terhadap perubahan dalam bentuk apapun. Dalam Agile Software Development interaksi dan personel lebih penting dari pada proses atau alat. Aplikasi yang telah dibuat dan berfungsi lebih penting daripada dokumentasi yang lengkap, kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap tanggap terhadap perubahan lebih penting daripada mengikuti rencana. Agile juga dapat diartikan sebagai sekelompok metodologi pengembangan software yang didasarkan pada prinsip-prinsip yang sama atau pengembangan system jangka pendek yang memerlukan adaptasi cepat dari pengembang terhadap perubahan dalam bentuk apapun. Menurut (Hajjdiab & Al Shaima Taleb, 2011), saat ini banyak organisasi atau perusahaan terkemuka yang sudah mengadopsi Agile pada semua atau sebagian dari proyek mereka,
http://digilib.mercubuana.ac.id/
yaitu AOL, CNBC, Yahoo!, Google, Micrsoft, Siemens, Shopzilla, Rockstar, dan masih banyak lainnya. Menurut Agile Alliance, ada 12 prinsip yang mendorong keberhasilan dalam penerapan Agile Software Development, yaitu:
Kepuasan
klien
adalah
prioritas
utama
dengan
menghasilkan produk lebih awal dan terus menerus.
Menerima perubahan kebutuhan, sekalipun diakhir pengembangan.
Penyerahan hasil/software dalam hitungan waktu beberapa minggu sampai beberapa bulan.
Pihak bisnis dan pengembang harus bekerja sama setiap hari selama pengembangan berjalan.
Membangun proyek dilingkungan orang-orang yang bermotivasi tinggi yang bekerja dalam lingkungan yang mendukun
dan
yang
dipercaya
untuk
dapat
menyelesaikan proyek.
Komunikasi dengan
berhadapan langsung adalah
komunikasi yang efektif dan efisien
Software yang berfungsi adalah ukuran utama dari kemajuan proyek
Dukungan yang stabil dari sponsor, pembangun, dan pengguna diperlukan untuk menjaga perkembangan yang berkesinambungan
Perhatian kepada kehebatan teknis dan desain yang bagus meningkatkan sifat agile
Kesederhanaan penting
Arsitektur, kebutuhan dan desain yang bagus muncuk dari tim yang mengatur dirinya sendiri
Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif dan segera melakukannya.
http://digilib.mercubuana.ac.id/
Beberapa kelebihan dari Agile Software Development yaitu:
Meningkatkan kepuasan kepada klien
Pembangunan system dibuat lebih cepat
Mengurangi resiko kegagalan implementasi software dari segi non-teknis
Jika
pada
saat
pembangunan
system
terjadi
kegagalan,kerugian dar segi materi relative kecil.
2.5. UML (Unified Modelling Language) UML adalah suatu alat yang digunakan untuk memvisualisasikan atau menggambarkan suatu sistem yang terkait dengan objek. Menurut (Dennis et al., 2012), UML adalah proses desain berbasis objek dan diagram teknik yang efektif untuk memodelkan setiap proyek pengembangan sistem mulai tahap analisis sampai tahap desain dan implementasi.
Sedangkan
menurut
(Alhumaidan,
2012),
banyak
keuntungan yang dapat diambil dari permodelan UML, permodelan UML ringkas dan sangat mudah untuk diphami. Tujuan pemanfaatan atau penggunaan UML dalam rekaya perangkat lunak adalah sebagai berikut:
Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa.
Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.
Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini
http://digilib.mercubuana.ac.id/
maka akan bias diketahui informasi secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering).
Memodelkan suatu sistem (bukan hanya perangkat lunak) yang menggunakan konsep berorientasi object
Menciptakan
suatu
bahasa
pemodelan
yang
dapat
digunakan baik oleh manusia maupun mesin. 2.5.1. Jenis-jenis Diagram UML UML menyediakan sembilan jenis diagram yang dapat dikelompokkan
berdasarkan
sifatnya
yang
statis
ataupun
dinamis(Haviluddin, 2011). Namun didalam penelitian ini penulis hanya menggunakan 4 jenis diagram.
2.5.1.1.
Class Diagram Class Diagram digunakan untuk menampilkan kelas-kelas atau paket-paket di dalam sistem dan relasi antar mereka. Ia memberikan gambaran sistem secara statis. Biasanya, dibuat beberapa diagram kelas untuk satu sistem. Berikut ini adalah simbol-simbol yang terdapat pada class diagram.
http://digilib.mercubuana.ac.id/
Tabel 2.1 Simbol-simbol Class Diagram NO
GAMBAR
NAMA
KETERANGAN Hubungan dimana objek anak (descendent) berbagi perilaku
1
Generalization
dan struktur data dari objek yang ada di atasnya objek induk (ancestor). Upaya
2
Nary Association
untuk
menghindari
asosiasi dengan lebih dari 2 objek.
Himpunan dari objek objek-objek 3
Class
yang berbagi atribut serta operasi yang sama. Deskripsi dari urutan aksi aksi-
4
Collaboration
aksi
pada
menghasilkan
sistem
yang
suatu
hasil
yang terukur bagi suatu aktor Hubungan dimana perubahan yang 6
Dependency
terjadi
pada
suatu
elemen mandiri (independent) akan mempegaruhi elemen yang
bergantung
padanya
elemen yang tidak mandiri Apa yang menghubungkan 7
Association
http://digilib.mercubuana.ac.id/
antara
objek
objek lainnya
satu
dengan
Berikut ini adalah contoh classs diagram pada sistem aplikasi pengiriman barang.
Gambar 2.2 Contoh Class Diagram Aplikasi Pengiriman Barang
2.5.1.2.
Use Case Diagram Use case diagram merupakan suatu diagram yang menangkap
kebutuhan
untuk
sistem
dan
untuk
menggambarkan interaksi antara sistem dan pengguna. (Dennis et al., 2012), 2012), Diagram yang menggambarkan actor, sebagai suatu urutan tindakan yang use case dan relasinya sebagai memberikan nilai terukur untuk aktor. Sebuah use case digambarkan sebagai elips horizontal dalam suatu diagram UML use case. Use Case memiliki dua istilah, yaitu : 1. System use case; interaksi dengan sistem. 2. Business use case; se; interaksi bisnis dengan konsumen atau kejadian nyata.
Use case diagram menyajikan interakasi antara use case dan aktor. Dimana, aktor dapat berupa orang, peralatan, atau sistem lain yang berinteraksi dengan sistem yang
sedang
dibangun. Use
http://digilib.mercubuana.ac.id/
case menggambarkan
fungsionalitas sistem atau persyaratan-persyaratan yang harus dipenuhi sistem yang dilihat dari pandangan pengguna. Terdapat istilah pre condition dan post condition, fungsinya adalah memberikan informasi penting mengenai keadaan sistem sebelum dan sesudah Use case.
Tabel 2.2Simbol-simbol Use Case Diagram NO
GAMBAR
NAMA
KETERANGAN Menspesifikasikan himpuan peran yang
1
Actor
pengguna mainkan ketika berinteraksi dengan use case. Hubungan
3
Generalization
(descendent)
dimana berbagi
objek
anak
perilaku
dan
struktur data dari objek yang ada di atasnya objek induk (ancestor).
4
Include
6
Association
7
System
Menspesifikasikan
bahwa
use
case
sumber secara eksplisit. Apa yang menghubungkan antara objek satu dengan objek lainnya. Menspesifikasikan
paket
yang
menampilkan sistem secara terbatas. Deskripsi dari urutan aksi-aksi yang
8
Use Case
ditampilkan sistem yang menghasilkan suatu hasil yang terukur bagi suatu aktor Interaksi aturan-aturan dan elemen lain
9
Collaboration
yang bekerja sama untuk menyediakan prilaku yang lebih besar dari jumlah dan elemen-elemennya (sinergi). Elemen fisik yang eksis saat aplikasi
10
Note
dijalankan dan mencerminkan suatu sumber daya komputasi
http://digilib.mercubuana.ac.id/
Berikut ini adalah contoh use case pada aplikasi game online:
Gambar 2.3 Contoh Use CaseDiagram Aplikasi Game Online
2.5.1.3.
Activity Diagram Diagramaktivitasatau
activitydiagram
menggambarkann aliran fungsionalitas sistem. Pada tahap pemodelan bisnis, diagrama aktivitas dapat digunakan untuk menujukkan aliran kerja bisnis (business work flow). Dapat juga digunakan untuk menggambarkan aliran kejadian (flow of event) dalam use case. Menurut (Dennis et al., 2012), activity diagram adalah diagram yang menggambarkan alur kerja bisnis independen dari class, aliran kegiatan dalam Use case, atau desain rinci sebuah metode. Berikut adalah tabel simbolsimbol yang ada pada activity diagram.
http://digilib.mercubuana.ac.id/
Tabel 2.3 Simbol-simbol Activity Diagram NO GAMBAR NAMA
KETERANGAN Memperlihatkan
Actifity
1
bagaimana kelas antarmuka berinteraksi State dari sistem yang
Action
2
mencerminkan eksekusi dari suatu aksi
3
4
Initial
Bagaimana
Node
dibentuk atau diawali.
Actifity
Bagaimana
Final
dibentuk
Node
dihancurkan
objek
objek dan
Satu aliran yang pada Fork Node tahap tertentu berubah
5
menjadi beberapa aliran
Berikut ini adalah contoh gambaran mengenai activity diagram:
Gambar 2.4 Contoh Gambar Activity Diagram Input Data Nasabah
http://digilib.mercubuana.ac.id/
2.5.1.4.
Sequence Digram Diagram
Sequence dinamis
yang
merupakan
menggambarkan
contoh
urutan class
model yang
berhubungan dalam use case dan pesan atau data yang lewat di antara mereka dari waktu ke waktu. (Dennis et al., 2012). 2012)
sekuensial
Diagram
diagram digunakan
untuk
atau sequence
menunjukkan
aliran
fungsionalitas dalam use case.. Diagram sekuensial adalah diagram yang disusun berdasarkan urutan waktu. Kita membaca diagram sekuensial dari atas ke bawah. Setiap diagram sekuensial mempresentasikan suatu aliran dari beberapa bebe aliran di dalam use case.. Kita dapat membaca obyek-obyek diagram ini dengan memperhatikan obyek obyek dan pesan-pesan pesan pesan yang ada di diagram. Obyek yang terlibat dalam aliran ditunjukkan dengan bujur sangkar yang ada di atas diagram. Berikut ini adalah simbol-simbol simbol yang terdapat pada sequence diagram.
Tabel 2.4 Simbol-simbol Sequence Diagram
NO GAMBAR
NAMA
1
LifeLine
KETERANGAN Objek entity,, antarmuka yang saling berinteraksi. Spesifikasi dari komunikasi antar objek
2
Message
yang memuat informasi-informasi informasi tentang aktifitas yang terjadi Spesifikasi dari komunikasi antar objek
3
Message
yang memuat informasi-informasi informasi tentang aktifitas yang terjadi
http://digilib.mercubuana.ac.id/
Berikut ini adalah contoh sequence diagram pada admin website sekolah:
Gambar 2.5 Contoh Sequence Diagram Admin
2.6. Basis Data 2.6.1. Definisi Basis Data Basis data yaitu “basis” yang berarti markas, pangkalan, atau tempat berkumpul, sedangkan “data” adalah gambaran yang mempresentasikan suatu objek di dunia nyata seperti manusia, barang, hewan, atau keadaan yang direkam dalam bentuk angka, symbol, teks, gambar, atau kombinasinya Basis data dapat didefinisikan sebagai berikut :
Himpunan
kelompok
berhubungan,
yang
data
(arsip)
diorganisasi
yang
sedemikian
saling rupa,
sehingga kelak dapat dimanfaatkan kembali dengan cepat.
Kumpulan data yang saling berhubungan yang disimpan secara bersama tanpa adanya pengulangan (redudansi) data.
Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronik.
http://digilib.mercubuana.ac.id/
Menurut (Connolly & Begg, 2014)Basis Data adalah kumpulan data yang saling berhubungan secara logika dan data terserbut saling terkait, dirancang agar dapat memberikan informasi yang diperlukan. Basis data saat ini menjadi kerangka kerja sebuah sistem informasi. Dalam basis data ada beberapa satuan data, yaitu :
Karakter, merupakan satuan data terkecil.
Field, adalah kumpulan dari karakter yang mewakili fakta tertentu.
Record,
merupakan
Informasi
penting
kumpulan bisa
field.
beberapa
dihasilkan
dengan
mengombinasikan beberapa field yang ada.
Tabel, adalah sekumpulan record yang memiliki kesamaan entitas dalam dunia nyata sedangkan kumpulan dari table disebut dengan basis data.
File, adalah bentuk fisik dari penyimpanan data. File basis data akan diolah hingga memmberikan informasi yang mudah dibaca oleh pengguna.
2.6.2. Database Management System (DBMS) DBMS adalah sebuah sistem perangkat lunak yang mengatur permintaan dan penyimpanan data yang terdapat di dalam sebuah basis data. Fitur yang disediakan oleh DBMS adalah keamanan, privasi, integritas, dan control koneksi ke dalam basis data, serta mengelola transaksi multiuser dan lingkungan akses secara bersama. Menurut (Connolly & Begg, 2014), Sistem Manajemen Basis Data adalah sistem perangkat lunak yang memungkinkan pengguna
untuk
menentukan,
membuat,
mengkontrol akses kedalam suatudatabase.
http://digilib.mercubuana.ac.id/
memelihara
dan
Fungsi utama DBMS dapat dikelompokkan menjadi 4, yaitu:
Data definition : menjelaskan mengenai struktur baru suatu basis data, pemindahan struktur data, serta memodifikasi struktur yg ada.
Data Maintenance, berfungsi untuk memasukkan data baru ke dalam struktur yang ada, memperbaharui data dan juga menghapus data.
Data retrieval, berfungsi untuk mengeksekusi query data dan mengekstrasi data.
Data Control, untuk mengawasi dan membatasi penggunaan serta kinerja basis data.
Contoh DBMS yang terkenal adalah, Microsoft Acces, MySQL, PostgreSQL, dan Oracle.
2.6.2.1.
Keuntungan MenggunakanDBMS DBMS
memungkinkan
perusahaan
mapun
pengguna individu untuk : 1. Mengurangi Apabila
pengulangan dibandingkan
data
dengan
file-
file komputer yang disimpan terpisah di setiap aplikasi computer, DBMS mengurangi jumlah total
file
dengan
menghapus
data
yang
terduplikasi di berbagai file. Data terduplikasi selebihnya dapat ditempatkan dalam satu file. 2. Mencapai
independensi
data
Spesifikasi data disimpan dalam skema pada tiap program aplikasi. Perubahan dapat dibuat pada struktur data tanpa memengaruhi program yang mengakses data. 3. Mengintegrasikan
data
beberapa
file
Saat file dibentuk sehingga menyediakan kaitan
http://digilib.mercubuana.ac.id/
logis, maka organisasi fisik bukan merupakan kendala. Organisasi logis, pandangan pengguna, dan program aplikasi tidak harus tercermin pada media penyimpanan fisik. 4. Mengambil data da informasi dengan cepat Hubungan-hubunga logis, bahasa manipulasi data,
serta
bahasa query memungkinkan
pengguna mengambil data dalam hitungan detik atau menit. 5. Mengingkatkan
keamanan
DBMS mainframe maupun computer mikro dapat menyertakan beberapa lapis keamanan seperti kata sandi (encryption) sehingga data yang dikelola akan lebih aman.
2.6.2.2.
Kerugian Menggunakan DBMS Keputusan
menggunakan
DBMS
mengikat
perusahaan atau menggunakan untuk : 1. Memperoleh perangkat lunak yang mahal DBMS mainframe masih
sangat
mahal.
Walaupun harga DBMS berbasis komputer mikro lebih murah, tetapi tetap merupakan pengeluaran besar bagi suatu organisasi kecil. 2. Memperoleh konfigurasi perangkat keras yang besar DBMS
sering
memerlukan
kapasitas
penyimpanan dan memori lebih besar daripada program aplikasi lain. 3. Mempekerjakan dan mempertahankan staf DBA DBMS memerlukan pengetahuan khusus agar dapat memanfaatkan kemampuannya secara
http://digilib.mercubuana.ac.id/
penuh. Pengetahuan khusus ini disediakan paling baik oleh para pengelola basisdata (DBA).
2.6.3. Entity-Relationship Diagram (ERD) Entity Relationship Diagram (ERD)adalah diagram untuk mendesain basis data yang dimulasi dengan melakukan identifikasi entitas dan relasi antar data (Connolly & Begg, 2014). ERD berguna untuk memodelkan sistem yang nantinya basis datanya akan dikembangkan. model ini sangat membantu dalam hal pemahaman model sistem dan rancangan basis data yang akan dikembangkan oleh perancang/analisis sistem.Diagram ER/ERD tersusun atas tiga komponen, yaitu entinitas merupakan obyek dasar yang terlibat dalam sistem, atribut berperan sebagai penjelas entitas, sedangkan kerelasian menunjukkan hubungan yang terjadi diantara dua entitas. Simbol-simbol dalam entity relationship diagram sebagai berikut:
Tabel 2.5 Notasi dalam Entity Relationship Diagram
Notasi
Keterangan Suatu objek yang dapat diidentifikasi dalam
Entitas
Relasi
Atribut
lingkungan pemakai Hubungan antar sejumlah entitas yang berbeda
Mendeskripsikan karakter entitas
Penghubung antara relasi dengan entitas
http://digilib.mercubuana.ac.id/
2.6.4. MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (database management system) atau DBMS yang open source dan sudah banyak digunakan untuk membuat aplikasi Mysql berfungsi sebagai SQL (Structured Query Language). Didalam merancang dan membangun aplikasi pada peneliatian ini, penulis menggunakan DBMS MySQL. MySQL sendiri adalah perangkat lunak yang multithread dan multiuser, dimana MySQL berjalan sebagai server yang melayani banyak pengguna auntuk mengakses sejumlah basis data. MySQL merupakan perangkat lunak yang bersifat gratis, dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL menggunakan SQL (Structure Query Language), adalah sebuah statement atau perintah yang digunakan untuk berkomunikasi dan melakukan operasi ke database, terutama untuk pemilihana atau seleksi dan penambahan data. Sehingga dengan menggunakan
SQL
tersebut
memungkinkan
untuk
dapat
melakukan operasi penyimpanan, pencarian pengaturan dan juga pengambilan data secara efisien terhadap suatu data. SQL sendiri didefinisikan oleh ANSI/ISO Standard SQL dan telah berkembang sejak tahun 1986.
Kepopuleran MySQL tidak lepas dari beberapa keunggulan yang dimilikinya antara lain :
Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
Perangkat lunak sumber terbuka.
http://digilib.mercubuana.ac.id/
MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
Multi-user MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
Performance tuning MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
Konektivitas. MySQL
dapat
menggunakan
melakukan
koneksi
protokol TCP/IP, Unix
atau Named Pipes (NT).
http://digilib.mercubuana.ac.id/
dengan soket
klien
(UNIX),
Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
Struktur tabel MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.
2.7. PHP Pada awalnya PHP adalah singkatan dari Personal Home Page, sesuai dengan namanya yaitu PHP digunakan untuk membuat website pribadi. Namun dalam beberapa tahun perkembangannya, PHP menjelma menjadi bahasa pemrograman popular yang tidak hanya digunakan untuk membuat
websie
sederhana
namun
telah
digunakan
untuk
mengembangkan aplikasi-aplikasi besar seperti Wordpress, Wikipedia, Joomla, dll. Saat ini PHP adalah singkatan dari PHP: Hypertext Preprocessor. PHP dapat digunakan secara gratis dan bersifat Open Source, kemudahan dan kepopuleran PHP membuat PHP menjadi standar bagi programmer web diseluruh dunia. Dikutip dari situs www.w3techs.com, (diakses pada 20 Januari 2016), berikut dibawah ini adalah market share penggunaan
http://digilib.mercubuana.ac.id/
bahasa pemrograman server-side untuk mayoritas website diseluruh dunia:
Gambar 2.6 Most Popular Server-side Programming
PHP
adalah
bahasa
pemrograman
yang
berfungsi
untuk
membangun sebuah website dinamis maupun aplikasi web, dan tentunya berbeda dengan HTML yang hanya bisa menampilkan kontetn statis saja. PHP digunakan untuk dapat berinteraksi dengan database, file dan fold folder, sehingga PHP bisa menampilkan konten yang dinamis dari sebuah website. Berbeda dengan HTML, PHP adalah bahasa scripting dan merupakan bahasa class-platform yaitu PHP bisa berjalan pada sistem operasi yang berbeda-beda. Program PHP ditulis dalam file plain ain text dan berbeda selalu berakhiran “.php”. PHP diciptakan oleh Rasmus Ledorf, seorang software engineer asal Greenland sekitar tahun 1995. Awalnya PHP digunakan oleh Rasmus hanya sebagai pencatatan dari pengunjung website yang dimilikinya, maka dari situlah kenapa napa PHP dinamakan Personal Home Page. Namun karena cukup disukai oleh komunitasnya, kemudian Rasmus merilis bahasa PHP tersebut ke publik dengan lisensi Open Source.Hingga Hingga saat ini PHP menjadi Server--Side Scripting yang paling banyak digunakan, dengan versi si yang sudah mencapai versi ke 5. Aturan penulisan script PHP adalah: 1. Semua script PHP harus diapit oleh tanda:
, atau
<script language='php'> dan , atau
http://digilib.mercubuana.ac.id/
, atau
<% dan %>
2. Tetapi tanda yang resmi dan paling banyak digunakan adalah yang pertama, yaitu 3. Pada setiap akhir perintah, diakhiri dengan tanda titik koma (;).
2.7.1. Notepad++ Notepad++ adalah sebuah software teks editor yang digunakan untuk menulis kode program sama seperti Notepad yang disediakan oleh Microsoft Windows namun Notepad++ disediakan khusus untuk menulis kode program. Notepad++ merupakan software yang ringan dan kompabilitas terhadap berbagai macam skrip dan bahasa pemrograman.
2.7.2. Adobe Dreamweaver Dreamweaver adalah
sebuah
HTML editor
profesional untuk mendesain web secara visual.Begitu pula dengan Adobe Dreamweaver CS5 merupakan HTML Edit Proffesional untuk mendesain web secara visual. Di versi CS5 ini didapat fiturfitur baru yang tidak ditemukan di versi sebelumnya, antara lain integrasi dengan Adobe Business Catalyst, integrasi Adobe Browser
Lab,
integrasi
dengan
CMS,
pengecekan
CMS,
pembuatan web album foto, penambahan flash paper, beberapa beaviour javascript, dan lain-lain. Adobe Dreamweaver memiliki banyak tool-tool yang memudahkan seorang web design untuk mengedit dan membuat kode-kode dalam halaman web. Fasilitas yang terdapat didalamnya antara lain: Referensi HTML, CSS dan Javascript, Javascript debugger, dan editor kode ( tampilan kode dan Code inspector) yang mengizinkan kita mengedit kode Javascript, XML, HTML, CSS, TEMPLATING dan dokumen teks lain secara langsung. Teknologi Roundtrip HTML yang dimilikinya mampu mengimpor
http://digilib.mercubuana.ac.id/
dokumen HTML tanpa perlu memformat ulang kode tersebut dan kita dapat menggunakan Dreamweaver pula untuk membersihkan dan memformat ulang HTML tanpa susah payah. Dengan fitur yang lengkap, kemudahan penggunaan, dukungan extention dan Plug-In yang banyak, Adobe Dreamweaver dapat membantu seorang web design bekerja lebih cepat dan efisien tanpa kesulitan yang berarti, bahkan untuk seorang pemula sekalipun yang belum banyak mengenal seputar coding HTML dan CSS.
2.8. XAMPP XAMPP adalah sebuah perangkat lunak atau software yang bersifat free atau bebas, fungsi dari XAMPP sendiri adalah sebagai web server yang berdiri sendiri (localhost), yang didalamnya terdiri dari berberapa program antara lain, Apache HTTP Server, MySQL database, serta penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl, dan nama XAMPP sendiri adalah singkatan dari X (dapat dijalankan di empat sistem operasi), Apache, MyASQL, PHP, dan Perl. Halaman utama dari XAMPP dalpat dilihat pada gambar dibawah ini.
Gambar 2.7 XAMPP
http://digilib.mercubuana.ac.id/
2.9. WWW (World Wide Web) WWW (World Wide Web) dapat diartikan sebagai sistem pengakses
informasi
dalam
internet,
atau
dapat
disebut
juga
sebagaidokumen yang saling terhubung, sehingga para pengguna bisa berpindah dari satu dokumen ke dokumen lainnya dengan mudah dengan menggunakan link.
2.9.1. Client-Side Scripting dan Server-Side Scripting Client-Side Scripting adalah bahasa pemrograman web yang pengolahan datanya dilakukan disisi klien atau komputer pengunjung/pengguna. Proses yang terjadi adalah ketika seseorang berkunjung ke sebuah website, komputer klien atau pengunjung tersebut akan mengunduh data atau script dan kemudian mengolahnya. Kekurangan dari Client-Side Scripting adalah kecepatan dari pemrose
san data atau script tergantung pada
spesifikasi komputer pengguna dan kecepatan dari koneksi internet pada komputer tersebut. Berbeda dengan Client-Side Scripting, yaitu Sever-Side Scripting melakukan pengolahan data atau script yaitu pada komputer server atau penyedia. Sistem kerjanya berbeda dengan Client-Side Scripting yaitu setiap kali sebuah website dikunjungi maka server akan mengirimkan data-data yang telah diolah oleh server dan kemudian ditampilkan di web. Hal yang mempengaruhi berat atau tidaknya proses sebuah website yaitu tergantung pada spesifikasi dan kecepatan dari komputer server. Kode-kode serverside tidak bisa dilihat oleh komputer klien karena sifatnya yang rahasia. Beberapa contoh dari Server-Side Script adalah PHP, ASP, dan ASP.Net.
2.9.2. Web Server Web server adalah suatu perangkat lunak (software) dalam server yang berfungsi untuk memberikan layanan yang berbasiskan
http://digilib.mercubuana.ac.id/
data serta berfungsi untuk menerima permintaan HTTP (Hypertext Transfer Protocol) dari klien (browser) dimana kemudian web server akan kembali hasil dari permintaan klien tersebut dalam bentuk halaman web yang pada umumnya berbentuk halaman HTML (Hyper Text Markup Language). Web server biasanya sudah dilengkapi dengan dengan mesin penerjemah bahasa skrip yang memungkinkan web server untuk dapat berinteraksi dengan klien dengan memanfaatkan kelebihan yang dimiliki oleh PHP dan ASP. Beberapa jenis web server diantaranya adalah :
Apache Web Server
Apache Tomcat
Microsoft Windows Server
Zeus Web Server
Sun Java System Web Server
2.9.3. Web Browser Web Browser adalah suatu program atau perangkat lunak yang terpasang dan tersimpan didalam sebuah komputer yang berguna untuk menjelajahi atau untuk mencari informasi di internet. Pada awalnya web browser berorientasi hanya pada teks dan belum dapat menampilkan gambar, namun pada saat sekarang ini web browser tidak hanya menampilkan teks dan gambar saja, namun dapat juga untuk memutar file berupa multimedia seperti musik dan video. Web browser dapat juga digunakan untuk menerima email, dijadikan sebagai halaman input ataupun sebagai halaman output. Beberpa contoh web browser adalah :
Internet Explorer
Google Chrome
Mozilla Firefox
Safari Browser
http://digilib.mercubuana.ac.id/
2.10.
Metode Pengujian Pengujian atau testing adalah kegiatan untuk menguji sistem yang
telah dibangun untuk menemukan kesalahan kemudian memperbaikinya agar sesuai standard.
2.10.1. Metode Pengujian Balck Box Black box testing adalah pengujian yang dilakukan hanya mengamati hasil eksekusi melalui data uji dan memeriksa fungsional dari perangkat lunak, tanpa kita ketahui apa yang sebenarnya ada dibalik aplikasi perangkat lunak tersebut. Pengujian black box adalah metode pengujian perangkat lunak yang menguji fungsionalitas dari sebuah aplikasi. Pengetahuan khusus dari kode aplikasi / struktur internal dan pengetahuan pemrograman pada umumnya tidak diperlukan(Nidhra, 2012). Pengujian pada Black Box berusaha menemukan kesalahan seperti: Fungsi-fungsi yang tidak benar atau hilang
Kesalahan interface Kesalahan dalam struktur data atau akses database eksternal Kesalahan kinerja
Kelebihan dari pengujian black box adalah :
Dapat memilih subset test yang secara efektif dan efisien dapat menemukan cacat. Dapat membantu memaksimalkan testing investment.
Sedangkan kekurangannya adalah :
Terdapat kemungkinan masih ada beberapa jalur eksekusi yang belum pernah diuji oleh tester
http://digilib.mercubuana.ac.id/
http://digilib.mercubuana.ac.id/