BAB 2 LANDAS AN TEORI 2.1
Teori Umum 2.1.1
Interaksi Manusia Komputer 2.1.1.1 Pengertian IMK Karena perkembangan pengguna komputer sekarang ini banyak dibutuhkan untuk sistem yang bersifat interaktif. Sistem ini harus diproses dan dirancang dengan baik supaya mempunyai manfaat yang tinggi dan besar dikatakan sebagai suatu sistem yang interaktif. Jika sudah dirancang dengan baik dan benar maka sistem ini akan menjadi sistem yang user friendly. Antar muka pemakai (user interface) adalah bagian sistem komputer yang memungkinkan manusia berinteraksi dengan komputer. Tujuan antar muka pemakai adalah agar sistem komputer dapat digunakan oleh pemakai. Interaksi manusia dan komputer (IM K) merupakan disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk digunakan oleh manusia, serta studi fenomena-fenomena besar berhubungan dengannya. Tujuan
rekayasa
interaksi
(Shneiderman,1998,pp11-14) adalah : 7
manusia
dengan
komputer
8
1. Fungsionalitas Sistem dengan fungsionalitas yang kurang memadai mengecewakan pemakai dan sering ditolak atau tidak digunakan. Sedangkan sistem dengan fungsionalitas berlebihan berbahaya dalam implementasi, pemeliharaan, proses belajar dan penggunaan yang sulit. 2. Kehandalan, Ketersediaan, Keamanan dan Integritas Data Kehandalan berfungsi seperti yang diinginkan, tampilan yang akurat, ketersedian berarti siap
ketika hendak digunakan dan jarang
mengalami masalah keamanan berarti terlindungi dari akses yang tidak diinginkan dan kerusakan yang disengaja. Integritas data adalah keruntuhan data yang terjamin, tidak mudah rusak atau diubah oleh orang yang tidak berhak. 3. Standarisasi, Integrasi, Konsistensi, dan Portabilitas Perancang harus memutuskan pengembangan yang mereka tawarkan cukup berguna untuk menghilangkan kekacauan kepada user.
2.1.1.2 Lima Faktor Manusia Terukur M enurut (Shneiderman,2010,p32), faktor - faktor manusia terukur dalam desain antarmuka pengguna terdiri atas : 1. Waktu belajar (Time to learn) : berapa lama waktu yang diperlukan orang awam dalam komunikasi pengguna untuk memperlajari cara relevan untuk melakukan suatu tugas.
9
2. Kecepatan kinerja (Speed of performance) : berapa lama waktu yang diperlukan untuk melakukan tugas. 3. Tingkat kesalahan (Rate of Error by User) : berapa banyak kesalahan dan kesalahan apa saja yang dibuat pengguna. 4. Daya ingat (Retention Over Time) : bagaimanakah kemampuan pengguna mempertahankan pengetahuannya setelah jangka waktu tertentu. Daya ingat berkaitan erat dengan waktu belajar dan frekuensi penggunaan. 5. Kepuasaan subjektif (Subjective satisfaction) : seberapa suka pengguna menggunakan variasi aspek dari sistem? Jawabannya dapat dipastikan dengan interview atau survey.
2.1.1.3 Kategori Pengguna M enurut Shneiderman (2010, p81), sebelum suatu perangkat lunak dibuat, sebaiknya harus dipertimbangkan dahulu kategori pengguna yang akan menggunakan program, karena setiap pengguna memiliki karakteristik yang berbeda. Berikut ini adalah tiga kategori dari pengguna yaitu : 1. Novice atau first-time users Aplikasi yang dibuat untuk pengguna seperti ini sebaiknya tidak terlalu sulit dan pesan kesalahan yang dirancang sebaiknya bersifat membangun serta spesifik sehingga pengguna tersebut dapat dengan
10
mudah menemukan letak kesalahannya, selain itu sebaiknya ada umpan balik dari suatu proses yang dikerjakan oleh program sehingga perngguna mengerti bahwa komputer sedang melakukan suatu pekerjaan tertentu. 2. Knowledgeable intermittent users Kategori adalah pengguna yang sudah mengerti konsep kerja komputer tetapi belum mengerti menggunakan beberapa fasilitas yang ada dalam suatu aplikasi. 3. Expert frequent users. Untuk kategori seperti ini biasanya penggguna ingin agar pekerjaanya cepat selesaim sehingga diusahakan membuat umpan balik sesingkat mungkin untuk mempercepat dimulainya suatu aksi, sebaiknya aplikasi yang dibuat juga dilengkapi dengan shortcut.
2.1.1.4 Delapan Aturan Emas Delapan aturan emas adalah prinsip-prinsip mendasar untuk desain antarmuka. Peraturan ini diperoleh berdasarkan pengalaman pembuatan desain.
Berikut
ini
adalah
Delapan
Aturan
Emas
tersebut
(Shneiderman,2010,p88) : 1. Berusaha untuk konsisten. Konsisten pada aksi-aksi dalam situasi tertentu, konsistensi warna, tampilan, huruf, dan sebagainya
11
2. M enyediakan universal usability. M enyadari kebutuhan dari berbagai user dan merancang design
yang flexibel serta memfasilitasi
perubahan dari isi. 3. Umpan balik yang infomatif. Untuk setiap aksi yang dilakukan pengguna terhadap sistem, sistem harus memiliki umpan balik yang sopan dan jelas. 4. M embuat dialog untuk menghasilkan keadaan akhir. Urutan-urutan aksi diatur ke dalam grup-grup dengan bagian
awal, tengah dan
akhir. Feedback pada saat akhir dari group aksi tersebut harus memuaskan pengguna. 5. M emberikan penanganan kesalahan yang sederhana. Jika pengguna melakukan kesalahan, sistem harus dapat mendeteksinya dan memberikan instruksi sederhana dan membangun untuk perbaikan 6. M engizinkan pembalikan aksi. Sebanyak mungkin, semua aksi dapat dibalik. Fitur ini mengurangi kekhawatiran karena pengguna tahu kesalahan dapat diabaikan. 7. M endukung pusat kendali internal. Pengguna yang berpengalaman menginginkan suatu perasaan bahwa mereka menguasai sistem dan sistem harus merespon keinginan mereka. 8. M engurangi beban ingatan jangka pendek. Untuk mengatasi hal ini dapat dilakukan dengan mengurangi frekuensi window dan dengan waktu pelatihan yang cukup.
12
2.1.1.5 Waktu Respon Desainer yang menentukan waktu respon dan tingkat tampilan dalam interaksi manusia dengan komputer harus mempertimbangkan interaksi yang rumit pada kelayakan teknis, biaya, kerumitan tugas, harapan pengguna, kecepatan performa tugas, tingkat error, dan prosedur penanganan error. Keputusan variable ini lebih rumit dengan adanya pengaruh dari perbedaan kepribadian pengguna, kelelahan, kebiasaan menggunakan komputer, pengalaman dengan tugas, dan motivasi (Shneiderman, 2010, p427)
User Starts typing
User Initiates activity
Computer begins response
Response time User planning time
Computer completes response
User think time
Gambar 2.1 Model dari sistem waktu re spon, waktu pe rencanaan user dan waktu be rpikir use r. (Sumbe r: Ben Shneide rman, Designing the Use r Inte rface ,2010,p427)
2.1.1.6 Teori Warna M enurut Shneiderman (2010, pp483-486), tampilan warna dapat menarik user dan sering dapat meningkatkan performa tugas, tapi bahaya penyalahgunaanya tinggi. Warna dapat :
13
•
M enenangkan atau merusak mata
•
M enambah aksen pada tampilan yang tidak menarik
•
M enekankan organisasi logis dari informasi
•
M enarik perhatian menjadi peringatan Tidak ada aturan yang simple untuk menentukan kegunaan warna,
tapi pedoman ini adalah langkah awal bagi designer : •
Gunakan warna secara konservatif Banyak
programmer
dan
desainer
baru
bersemangat
untuk
menggunakan warna untuk mencerahkan tampilan mereka, tetapi hasilnya sering kontraproduktif. •
Batasi penggunaan warna Banyak panduan desain yang menyarankan untuk membatasi jumlah warna pada angka dan huruf menjadi empat dengan batas tujuh warna pada keseluruhan tampilan.
•
Sadari kekuatan warna sebagai tehnik coding Warna mempercepat kesadaran untuk banyak tugas dan lebih efektif daripada tekstur coding.
•
Pertimbangkan
kebutuhan
pengguna
yang
buta
warna
Penggunaan warna hitam pada putih atau putih pada hitam akan berhasil pada kebanyakan user termasuk yang memiliki kebutaan warna. •
Gunakan warna untuk menandakan perubahan status
14
Dengan cara ini warna berperan sebagai metode untuk menarik perhatian.
2.1.2 Rekayasa Piranti Lunak 2.1.2.1 Pengertian Piranti Lunak M enurut Pressman (2005, p36), piranti lunak terdiri dari 3 definisi yaitu: 1. Sebuah Instruksi atau program komputer yang jika di eksekusi akan menghasilkan fungsi dan kemampuan kerja yang diinginkan. 2. Struktur data yang memungkinkan program untuk dapat memanipulasi informasi. 3. Dokumen
–
dokumen
yang menjelaskan
pengoperasian
dan
penggunaan dari program.
2.1.2.2 Lapisan Rekayasa Piranti Lunak M enurut Pressman (2005, p54), terdapat tiga lapisan rekayasa piranti lunak : 1. Proses (Process) Proses
rekayasa
menggabungkan
piranti layer
lunak
teknologi
merupakan secara
perekat
bersama-sama
yang dan
memungkinkan pengembangan piranti lunak komputer secara berkala.
15
2. M etode (Methods) M etode piranti lunak menyediakan cara-cara teknis dalam membangun piranti lunak. 3. Alat-alat bantu (Tools) M enyediakan pendukung otomatis atau semi otomatis untuk proses dan metode, misalnya Computer Aided Software Engineering (CASE) yang mengkombinasikan piranti lunak, perangkat keras dan basis data.
2.1.2.3 Karakteristik Piranti Lunak M enurut Pressman (2005, p37), piranti lunak memiliki beberapa karakteristik yang beda dengan piranti keras. Karakteristik tersebut adalah sebagai berikut: 1. Piranti lunak direkayasa atau dikembangkan, tetapi tidak dibuat. Biaya piranti lunak berpusat pada kegiatan perekayasaan piranti lunak tersebut. 2. Piranti lunak tidak akan rusak atau mengalami penurunan kualitas karena faktor umur. Tidak seperti piranti keras yang dapat rusak oleh faktor lingkungan, seperti kepanasan, faktor getaran, terkena debu dan faktor lainya. Piranti lunak tidak akan rusak karena hal tersebut. Tetapi jika pada piranti keras mengalami kerusakan, maka piranti yang rusak tersebut bisa digantikan dengan sparepart. Tidak dalam piranti keras, dimana tidak terdapat sparepart pada piranti lunak. Jika
16
ada kerusakan pada software, itu lebih disebabkan oleh kesalahan dalam pembuatan atau dalam mendesain piranti lunak tersebut. 3. Walaupun industri lainnya bergerak pada component based assembly, sebagian besar pembuatan piranti lunak dikerjakan berdasarkan pengembangan dari software sebelumnya.
2.1.2.4 Produk Piranti Lunak Piranti lunak dapat diaplikasikan di berbagai macam situasi. Produk – produk piranti lunak antara lain terdiri dari (Pressman, 2005, p40) : 1. Sistem piranti lunak Sistem perangkat lunak merupakan sekumpulan program yang ditulis untuk melayani program-program lain. 2. Aplikasi Piranti Lunak Aplikasi piranti lunak terdiri dari stand-alone program yang menangani kebutuhan bisnis yang spesifik. Aplikasi dalam bisnis proses area ini memfasilitasi operasi bisnis atau management / technical decision making. Sebagai tambahan berhubungan dengan aplikasi pemrosesan data konvensional, aplikasi piranti lunak digunakan untuk mengontrol fungsi-fungsi bisnis secara real-time. Contohnya
point-of-sale
transaction
manufacturing process control.
processing,
real
time
17
3. Product-Line Software Dirancang untuk menyediakan kapabilitas tertentu untuk penggunaan oleh berbagai pelanggan, product-line software dapat berfokus pada marketplace yang terbatas. 4. Piranti lunak teknik dan pengetahuan Piranti lunak ini menjangkau aplikasi pendidikan mulai dari astronomi sampai dengan vulkanologi, dari analisis otomotif sampai dengan dinamika orbit pesawat ruang angkasa, dan berbagai jenis aplikasi yang digunakan untuk tujuan pendidikan lainnya. 5. Embedded Software Piranti lunak jenis ini dipakai untuk mengontrol hasil serta sistem untuk keperluan konsumen dan pasar industri. 6. Piranti lunak kecerdasan buatan Piranti lunak Artificial Intelligence menggunakan algoritma nonnumerik untuk memecahkan masalah kompleks yang tidak sesuai untuk perhitungan atau analisis secara langsung. 7. Web Application Aplikasi web merupakan kumpulan dari hypertext files terhubung yang mempresentasikan informasi menggunakan text dan grafik terbatas.
18
2.1.2.5 Model Proses Piranti Lunak 2.1.2.5.1 Pengertian Model Proses Piranti Lunak M enurut Sommerville (2011, p29-30), M odel Proses Piranti Lunak adalah representasi sederhana dari Software Process, yang direpresentasikan dari sudut pandang tertentu. Contoh dari sudut pandang proses diantaranya : 1. Workflow Perspektive – Sequence of Activities 2. Data-Flow Perspektive – Information Flow 3. Role/Action Perspektive – Who Does What M odel Proses Secara umum : 1. The waterfall model, memisahkan dan membedakan tahapantahapan spesifikasi dan pengembangan. 2. Evolutionary development, spesifikasi dan pengembangan saling berselakan. 3. Formal system development, model sistem matematika yang secara formal diubah untuk diimplementasikan. 4. Reuse-based
development,
sistem
dibangun
menggunakan komponen-komponen yang sudah ada.
dengan
19
2.1.2.5.2 Waterfall Model (Software Lifecycle) M enurut Pressman (2005, p79), dalam software lifecycle (waterfall model) terdapat beberapa tahapan utama yang menggambarkan aktivitas pengembangan software. Software lifecycle (Sommerville,2010,p30-p31) 1. Requirement analysis and definition, merupakan layanan, batasan
dan
tujuan
dari sistem yang dibuat
mengkonsultasikannya bersama para pengguna
dengan
sistem. Hal
tersebut didefinisikan secara detail dan ditampilkan sebagai spesifikasi dari sistem. 2. System and software design, proses desain sistem membagi kebutuhan sistem akan software dan hardware. Hal tersebut membangun arsitektur sistem keseluruhan. Desain software meliputi identifikasi dan penjabaran abstraksi sistem software dasar dan keterhubungannya. 3. Implementation and unit testing, selama tahapan ini, desain software direalisasikan sebagai sekumpulan program atau unit program. Unit testing meliputi verifikasi bahwa setiap unit telah memenuhi spesifikasinya. 4. Integration and system testing. Unit-unit program individual digabungkan (integrated) dan diujicoba (tested) sebagai sebuah sistem lengkap untuk memastikan bahwa kebutuhan-kebutuhan
20
software telah terpenuhi. Setelah pengujian, sistem software disampaikan pada pelanggan. 5. Operation and maintenance, biasanya tahapan ini merupakan tahapan terpanjang dalam lifecycle. Sistem di-install dan digunakan secara praktikal. Pemeliharaan meliputi perbaikan kesalahan yang tidak diketahui pada tahapan sebelumnya, memperbaiki implementasi unit sistem dan meningkatkan layanan sistem ketika terdapat kebutuhan baru.
2.1.3
Sistem Basis Data 2.1.3.1 Pengertian Basis Data M enurut Connolly & Begg (2010, p54), basis data adalah sekumpulan data yang secara logika saling berkaitan dan gambaran dari data ini dirancang untuk mendapatkan informasi yang dibutuhkan oleh suatu organisasi. M enurut Whitten (2004, p548), basis data adalah kumpulan file yang saling terkait. Basis data tidak hanya merupakan kumpulan file. Record pada setiap file harus memperbolehkan hubungan-hubungan untuk menyimpan file lain. Keuntungan basis data yaitu : •
Kemampuannya untuk menggunakan data yang sama di banyak aplikasi dan sistem
21
•
Penyimpanan
data
dalam
format
yang
fleksibel.
Hal
ini
memungkinkan karena basis dan didefinisikan secara terpisah dari sistem
informasi
dan
program-program
aplikasi
yang
akan
menggunakan basis data. •
Teknologi basis data menyediakan skalabilitas superior, dalam arti basis data dan sistem yang menggunakannya dapat ditingkatkan atau dikembangkan untuk memenuhi kebutuhan-kebutuhan perubahan pada sebuah organisasi.
•
Kemajuan independensi data yang sangat mengurangi redudansi data, telah mengingkatkan fleksibilitas.
2.1.3.2 Database Management System (DBMS ) M enurut Connolly dan Begg (2010, p66), pengertian DBM S adalah sebuah perangkat lunak yang memberikan kebebasan pada pengguna untuk mendefinisikan, membuat, memelihara dan mengontrol akses ke basis data. Fasilitas-fasilitas yang disediakan DBM S antara lain : 1.
Data Definition Language (DDL) DDL memberikan kebebasan pada pengguna untuk mendefinisikan basis data. Dalam DDL, pengguna dapat membuat struktur, tipe data dan constraints dari data yang disimpan ke dalam basis data.
22
2.
Data Manipulation Language (DM L) DM L memberikan kebebasan pada pengguna untuk melakukan insert, update, delete dan retrieve data dari basis data. DM L menyediakan pengguna sebuah fasilitas untuk melakukan pencarian data yang disebut query language. Query language yang umum digunakan adalah Structured Query Languange (SQL).
3.
DBM S juga menyediakan control akses ke basis data, yaitu : a.
Security System, mencegah pengguna yang tidak memiliki hak akses untuk mengakses basis data.
b.
Integrity System, menjaga konsistensi data yang disimpan dalam basis data.
c.
Concurency Control System, memungkinkan akses ke basis data secara bersamaan.
d.
Recovery Control System, me-restore basis data ke keadaan yang sebelumnya jika terjadi kesalahan hardware atau software.
e.
User Accesible-Catalog, terdapat deskripsi dari data yang ada dalam basis data.
23
4.
Dalam DBM S environment terdapat 5 komponen utama. Komponen tersebut antara lain : a. Perangkat keras DBM S dan aplikasi membutuhkan perangkat keras agar dapat berjalan.
Perangkat
keras
yang digunakan
bergantung pada kebutuhan organisasi dan DBM S yang digunakan. Beberapa DBM S hanya berfungsi pada beberapa perangkat keras yang digunakan atau sistem operasi tertentu, ketika yang lain berjalan pada sebuah keberagaman perangkat keras dan sistem operasi yang luas. b. Perangkat lunak Komponen perangkat lunak terdiri dari perangkat lunak DBM S itu sendiri dan program-program aplikasi, bersama dengan sistem operasi mencakup perangkat lunak jaringan jika digunakan pada sebuah jaringan target dari DBM S ialah memiliki peralatn generasi keempatnya yang cepat
melalui ketentuan non-
procedural query language, reports generators, forms generators, graphic generatos, application generators.
24
c. Data Komponen utama yang paling penting dari DBM S environment adalah data. Data berperan sebagai jembatan penghubung antara komponen mesin dan komponen manusia. d. Procedure Procedure lebih cenderung pada instruksi dan peraturan yang mengatur desain dan penggunaan basis data. Pengguna dari sistem dan staff yang mengelola basis data membutuhkan dokumentasi procedure untuk mengetahui cara menggunakan dan menjalankan sistem. e. People / M asyarakat Komponen akhir dari DBM S ialah masyarakat yang terlibat dengan sistem.
Gambar 2.2 Lingkungan DBMS
25
2.1.3.3 S truktur Data Relational M enurut Connolly & Begg (2010, p144), struktur data relational meliputi : 1.
Relasi, yaitu table yang memiliki kolom dan baris
2.
Atribut, yaitu kolom pada table
3.
Domain, yaitu batasan nilai pada atribut
4.
Tuple, yaitu baris pada table
5.
Degree, yaitu jumlah atribute
6.
Cardinality, yaitu jumlah baris (tuple)
7.
Database relational, yaitu merupakan sekumpulan table (relasi) yang sudah dinormalisasi dengan nama table yang berbeda
8.
Superkey, yaitu sebuah attribute atau sekumpulan attribute yang mengidentifikasikan baris pada relasi secara unik
9.
Candidate key, yaitu attribute yang bisa dijadikan primary key
10. Primary
key,
yaitu
candidate
key
yang
dipilih
untuk
mengidentifikasikan baris pada table secara unik 11. Foreign key, yaitu attribute atau satu set attribute pada sebuah table yang menghubungkan table tersebut dengan table lain.
2.1.3.4 Entity Relationship Model M enurut Connolly & Begg (2010, p371), Entity Relationship adalah merupakan pemodelan dengan pendekatan top-down pada
26
perancangan database yang dimulai dengan mengidentifikasi data-data penting yang disebut entities dan hubungannya. Konsep dasar dari ERD adalah tipe entity , yaitu kumpulan dari objek-objek
yang
mempunyai
properties
yang
sama,
yang
diidentifikasikan oleh kumpulan entities yang mempunyai keberadaan yang tunggal. Ada berbagai jenis relationship yang mungkin terjadi antara entities, diantaranya :
1. One-to-One Relationship (1..1) Hubungan antara satu anggota entity dengan tepat satu anggota dari entity yang lain.
Gambar 2.3 Contoh One-to-One Relationship (S umber : Connolly & Begg,2010, p386)
27
2. One-to-Many Relationship (1..*) Hubungan antara satu anggota entity dengan satu atau lebih anggota dari entity yang lain diasosiasikan dengan tepat satu anggotadari entity pasangannya.
Gambar 2.4 Contoh One-to-Many Relationship (S umber : Connolly & Begg, 2010, p388)
3. Many-to-Many relationship (*..*) Hubungan antara satu entity dengan lebih dari satu anggota dari entity yang lain, dan juga sebaliknya, satu anggota entity yang lain dapat diasosiasikan dengan lebih dari satu anggota pasangannya.
28
Gambar 2.5 Contoh Many-to-Many Relationship (Sumber : Connolly & Begg, 2010, p389)
2.1.3.5 Data Definition Languange M enurut Connolly & Begg (2002, p 40), Data Definition Language adalah bahasa yang memungkinkan DBA atau user untuk mendeskripsikan dan menamakan entities, attribute dan relasi yang diperlukan untuk aplikasi, bersama dengan
keamanan dan integritas
yang berhubungan.
2.1.3.6 Data Manipulation Languange M enurut Connolly & Begg (2002, p 41-42), Data Manipulation Language adalah bahasa yang menyediakan set operasi untuk mendukung operasi-operasi manipulasi pada data yang terdapat pada database. Ada dua tipe DM L, diantaranya :
29
1. Procedural DML, yaitu bahasa yang memperbolehkan user untuk memberitahu sistem apakah data diperlukan dan bagaimana data dapat diperoleh. 2. Non-procedural DML, yaitu bahasa yang memperbolehkan user untuk memberitahukan apakah data diperlukan atau tidak namun tidak memberitahukan bagaimana cara memperolehnya.
2.1.3.7 Normalisasi M enurut Connolly (2005, p388), normalisasi adalah teknik untuk menghasilkan sejumlah tabel dengan properties yang diinginkan, sesuai dengan kebutuhan data dari perusahaan. Normalisasi sering dilakukan sebagai rangkaian dari pengujian pada suatu hubungan untuk menentukan apakah hubungan tersebut benar atau melanggar persyaratan dari bentuk normal yang ditentukan. Tujuan
dari
normalisasi
adalah
untuk
mengidentifikas i
sekumpulan relasi yang sesuai yang mendukung data yang dibutuhkan oleh sebuah perusahaan. Karakteristik dari sekumpulan relasi yang sesuai termasuk sebagai berikut : a.
Jumlah minimal dari atribut – atribut yang dibutuhkan untuk mendukung data yang dibutuhkan oleh perusahaan.
b.
Atribut – atribut dengan relasi logika yang dekat ditemukan dalam relasi yang sama.
30
c.
Redudansi minimal dengan setiap atribut yang digambarkan hanya sekali dengan pengecualian yang sangat penting dari setiap atribut yang membentuk keseluruhan atau sebagian dari foreign keys, dimana dibutuhkan untuk penggabungan relasi yang saling terkait.
Adapun bentuk - bentuk normal tersebut adalah: 1.
First Normal Form (1NF)
Sebuah relasi dimana setiap persimpangan antara baris dan kolom mengandung satu dan hanya satu nilai. Aturan: a. M endefinisikan atribut kunci b. Tidak adanya group berulang c. Semua atribut bukan kunci tergantung pada atribut kunci 2.
Second Normal Form (2NF)
Sebuah relasi yang telah memenuhi normal pertama (1NF) dan setiap atribut yang bukan primary key, fully functionally dependent terhadap primary key. Aturan: a. Sudah memenuhi dalam bentuk normal pertama b. Sudah tidak ada ketergantungan parsial, dimana seluruh field hanya tergantung pada sebagian field kunci
31
3.
Third Normal Form (3NF)
Sebuah relasi yang telah memenuhi normal pertama (1NF) dan normal kedua (2NF) dan tidak ada atribut yang bukan primary key, transitively dependent terhadap primary key. Aturan: a. Sudah berada dalam bentuk normal kedua (2NF) b. Tidak ada ketergantungan transitif (dimana field bukan kunci tergantung pada field bukan kunci lainnya)
2.1.4
Unified Modelling Language (UML) UM L adalah
metode
generasi
ketiga untuk
menspesifikasikan,
memvisualisasikan dan mendokumentasikan suatu pengembangan sistem yang berorientasi objek. (DastBaz, 2003, p124-125) M enurut Whitten (2004,p430) UM L adalah suatu konversi pemodelan yang digunakan untuk menentukan atau menggambarkan sebuah sistem piranti lunak yang terkait dengan objek. UM L terdiri dari beberapa tipe diagram antara lain :
2.1.4.1 Use Case Diagram M enurut Whitten et al (2004, p271), use case diagram adalah diagram yang menggambarkan interaksi antara sistem, eksternal sistem dan user. Dengan kata lain, diagram ini menjelaskan siapa yang akan
32
menggunakan sistem tersebut dan bagaimana cara user tersebut berinteraksi dengan sistem. Use case diagram menunjukkan hubungan statis antara aktor dan use case dalam sistem. M ereka menyediakan pandangan awal dari struktur
sistem.
Use
case
berguna
dalam
membangun
dan
mengkomunikasikan pandangan umum sistem. M ereka menyediakan satu titik awal untuk desain, khususnya objek identifikasi dan diagram urutan. Elemen-elemen diagram use case adalah use case, aktor, kegunaan, dan tanda panah. Aktor, diwakili oleh stick figure adalah segala yang di luar sistem, seperti jenis pengguna atau sistem eksternal, yang berinteraksi dengan sistem. (M urray R. Cantor,p47,p51) System Use Case 1
Actor 1
Use Case 1
Actor 4
Use Case 1
Actor 3
Gambar 2.6 Contoh Use-Case Diagram (Sumber : Whitten, Jeffrey L, S ystem Analysis and Design Methods, 1998, p272)
33
Notasi yang digunakan dalam use case diagram:
Tabel 2.1 Notasi Use Case Diagram (Booch, 1999)
34
2.1.4.2 Class Diagram M enurut
Whitten
et
al.
(2004,
p441),
class
diagram
menggambarkan struktur objek yang terdapat pada sebuah sistem. Diagram ini menunjukkan objek-objek yang terdapat pada suatu sistem serta relasi antar objek-objek tersebut. Kelas dan paket diagram memberikan pandangan dari desain kelas sistem. Diagram mengandung representasi dari kelas dan paket (set terkait kelas) dan bagaimana mereka terkait. (M urray R. Cantor,1998,p47,p70)
Gambar 2.7 Contoh Class Diagram (Sumber : http://www.ibm.com/developerworks/wireless/library/wiarch11/)
35
Notasi yang digunakan dalam class diagram : Tabel 2.2 Notasi Class Diagram (Booch, 1999)
36
2.1.4.3 Sequence Diagram M enurut Whitten et al. (2004, p442), sequence diagram menggambarkan bagaimana objek berinteraksi antara satu dengan yang lain melalui message dalam eksekusi dari sebuah use case atau sebuah operasi. Diagram ini menggambarkan bagaimana message dikirim dan diterima antar objek dan urutannya. Sequance diagram terikat bersama diagram use case dan class diagram. M ereka menunjukkan bagaimana class bekerja sama untuk melaksanakan use case. (M urray
R.
Cantor,1998,p71)
Gambar 2.8 Contoh Sequence Diagram (Sumber : http://www.ibm.com/developerworks/wireless/library/wiarch11/)
37
Notasi yang digunakan dalam sequence diagram: Tabel 2.3 Notasi Sequence Diagram (Booch, 1999)
2.1.5
Microsoft Visual Basic M icrosoft Visual Basic merupakan sebuah bahasa pemrograman yang
menawarkan Integrated Development Environment (IDE) visual untuk membuat program perangkat lunak berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman (COM ), Visual Basic merupakan turunan bahasa pemrograman BASIC dan menawarkan pengembangan perangkat lunak komputer berbasis grafik dengan cepat. Beberapa bahasa skrip seperti Visual Basic for Applications (VBA) dan Visual Basic Scripting Edition (VBScript), mirip seperti halnya Visual Basic, tetapi cara kerjanya yang berbeda. Para
38
programmer dapat membangun aplikasi dengan menggunakan komponenkomponen yang disediakan oleh Microsoft Visual Basic. Program-program yang ditulis dengan Visual Basic juga dapat menggunakan Windows API, tapi membutuhkan deklarasi fungsi luar tambahan. Dalam pemrograman untuk bisnis, Visual Basic memiliki pangsa pasar yang sangat luas. M enurut Burrows (2000, p7), Visual Basic (VB) adalah sebuah program yang didesain
khusus
untuk
memfasilitasi
kebutuhan
programmer
dalam
pengembangan sebuah program baru. Visual Basic menyediakan dua hal untuk digunakan oleh programmer, yaitu programming tools yang digunakan oleh programmer untuk menentukan komponen-komponen didalam program yang sedang dibuat, dan programming language yang memungkinkan programmer untuk membuat perintah-perintah untuk dikerjakan oleh program yang sedan g dibuat.
2.1.6
Microsoft SQL Server M enurut Ross M istry (2009), SQL SERVER adalah platform database
organisasi terpercaya yang menyediakan keunggulan kompetitif dengan memungkinkan pengguna untuk mendapatkan hasil yang lebih cepat dan dengan demikian membuat keputusan bisnis yang lebih baik.
39
2.2
Teori Khusus 2.2.1
Teori Produksi M enurut Nasution (2003,p3), proses produksi merupakan cara, metode,
dan teknik untuk menciptakan atau menambah kegunaan suatu produk dengan mengoptimalkan sumber daya produksi (tenaga kerja, mesin, bahan baku, dana) yang ada. Sistem produksi menurut proses menghasilkan output secara ekstrim dapat dibedakan menjadi dua jenis yaitu : a. Proses produksi berkelanjutan (Continous Process) b. Proses produksi terputus (Intermittent Process / Discrete System) Perbedaan antara kedua proses ini adalah pada lamanya waktu set up peralatan produksi. Proses berkelanjutan tidak membutuhkan waktu set up yang lama sedangkan proses terputus memerlukan waktu set up yang lebih lama. Tujuan dari produksi adalah untuk memenuhi kebutuhan manusia dalam usaha mencapai kemakmuran. Kemakmuran akan tercapai bila konsumen memiliki daya beli cukup tinggi dan barang/jasa yang diperlukan tersedia cukup untuk mememenuhi kebutuhan. Di dalam suatu produksi ada hal-hal yang harus diperhatikan, di antaranya :
40
a. komposisi input yang bagaimana yang harus digunakan? b. bagaimana proses produksi berlangsung agar tingkat produksi maksimal? c. komposisi input yang bagaimana yang harus digunakan? d. bagaimana proses produksi dilaksanakan agar biaya produksi serendah mungkin?
Input 1.SDA 2.SDM
Proses Produksi
Output Barang dan Jasa
3.M odal 4. Pengusaha Gambar 2.9 Produksi
2.2.2
Faktor Produksi M enurut Griffin (2006,p9), faktor produksi adalah faktor produksi yang
tidak dapat diperbaharui dan sudah tersedia. Faktor produksi turunan adalah hasil penggabungan dari faktor produksi asli yang merupakan perkembangan kebudayaan dan pengetahuan manusia.
41
Dalam ilmu ekonomi, faktor produksi adalah sumber daya yang digunakan dalam sebuah proses produksi barang dan jasa. Pada awalnya, faktor produksi dibagi menjadi empat kelompok, yaitu tenaga kerja, modal, sumber daya alam, dan kewirausahaan. Namun pada perkembangannya, faktor sumber daya alam diperluas cakupannya menjadi seluruh benda tangible, baik langsung dari alam maupun tidak, yang digunakan oleh perusahaan, yang kemudian, disebut sebagai faktor fisik (physical resources). Selain itu, beberapa ahli juga menganggap sumber daya informasi sebagai sebuah faktor produksi, yaitu tenaga kerja (labor), modal (capital), sumber daya fisik (physical resources), kewirausahaan (entrepreneurship), dan sumber daya informasi (information resource). a. Sumber Daya Fisik Faktor produksi fisik ialah semua kekayaan alam semesta dan barang mentah lainnya yang dapat digunakan dalam proses produksi. Faktor produksi yang termasuk di dalamnya adalah tanah, air, dan bahan mentah (raw material). b. Tenaga Kerja Tenaga kerja merupakan faktor produksi insani yang secara langsung maupun tidak langsung menjalankan kegiatan produksi. Faktor produksi tenaga kerja juga dikategorikan sebagai faktor
42
produksi asli. Dalam faktor produksi tenaga kerja, terkandung unsur fisik, pikiran, serta kemampuan yang dimiliki oleh tenaga kerja. Oleh karena itu, tenaga kerja dpat dikelompokkan berdasarkan kualitas (kemampuan dan keahlian) dan berdasarkan sifat kerjanya. Berdasarkan kualitasnya, tenaga kerja dapat dibagi menjadi tenaga kerja terdidik, tenaga kerja terampil, dan tenaga kerja tidak terdidik dan tidak terlatih. Tenaga kerja terdidik adalah tenaga kerja yang memerlukan pendidikan tertentu sehingga memiliki keahlian di bidangnya, misalnya dokter, insinyur, akuntan, dan ahli hukum. Tenaga kerja terampil adalah tenaga kerja yang memerlukan kursus atau latihan bidang-bidang keterampilan tertentu sehingga terampil di bidangnya. M isalnya tukang listrik, montir, tukang las, dan sopir. Sementara itu, tenaga kerja tidak terdidik dan tidak terlatih adalah tenaga kerja yang tidak membutuhkan pendidikan dan latihan dalam menjalankan pekerjaannya. M isalnya tukang sapu, pemulung, dan lainlain. Berdasarkan sifat kerjanya, tenaga kerja dibagi menjadi tenaga kerja rohani dan tenaga kerja jasmani. Tenaga kerja rohani adalah tenaga kerja yang menggunakan pikiran, rasa, dan karsa. M isalnya guru, editor, konsultan, dan pengacara. Sementara itu, tenaga kerja
43
jasmani adalah tenaga kerja yang menggunakan kekuatan fisik dalam kegiatan produksi. M isalnya tukang las, pengayuh becak, dan sopir. c. M odal Yang dimaksud dengan modal adalah barang-barang atau peralatan yang dapat digunakan untuk melakukan proses produksi. M odal dapat digolongkan berdasarkan sumber, bentuk, kepemilikan, serta sifat. Berdasarkan sumbernya, modal dapat dibagi menjadi dua : modal sendiri dan modal asing. M odal sendiri adalah modal yang berasal dari dalam perusahaan sendiri. M isalnya setoran dari pemilik sendiri. Sementara itu, modal asing adalah modal yang bersumber dari luar perusahaan. M isalnya modal yang berupa pinjaman bank. Berdasarkan bentuknya, modal dibagi menjadi modal konkret dan modal abstrak. M odal konkret adalah modal yang dapat dilihat secara nyata dalam proses produksi. M isalnya mesin, gedung, mobil, peralatan. Sedangkan yang dimaksud dengan modal abstrak adalah modal yang tidak memiliki bentuk nyata dalam proses produksi, tetapi mempunyai nilai bagi perusahaan. M isalnya hak paten, nama baik, dan hak merek. Berdasarkan kepemilikannya, modal dibagi menjadi modal individu dan modal masyarakat. M odal individu adalah modal yang
44
sumbernya dari perorangan dan hasilnya menjadi sumber pendapatan bagi pemiliknya. Contohnya adalah rumah pribadi yang disewakan atau bunga tabungan di bank. Sedangkan yang dimkasud dengan modal masyarakat adalah modal yang dimiliki oleh pemerintah dan digunakan
untuk
kepentingan
umum dalam proses
produksi.
Contohnya adalah rumah sakit umum milik pemerintah, jalan, jembatan, atau pelabuhan. Terakhir, modal dibagi berdasarkan sifatnya, modal tetap dan modal lancar. M odal tetap adalag jenis modal yang dapat digunakan secara berulang-ulang. M isalnya mesin-mesin dan bangunan pabrik. Sementara itu, yang dimaksud dengan modal lancar adalah modal yang harus digunakan dalam satu kali proses produksi. M isalnya, bahanbahan baku. d. Kewirausahaan Faktor kewirausahaan adalah keahlian atau keterampilan yang digunakan seseorang dalam mengkoordinir faktor-faktor produksi untuk menghasilkan barang dan jasa. Sebanyak dan sebagus apa pun faktor produksi alam, tenaga manusia, serta modal yang dipergunakan dalam proses produksi, jika dikelola dengan tidak baik, hasilnya tidak akan maksimal.
45
e. Sumber Daya Informasi Sumber daya informasi adalah seluruh data yang dibutuhkan perusahaan untuk menjalankan bisnisnya. Data ini bisa berupa ramalan kondisi pasar, pengetahuan yang dimiliki oleh karyawan, dan data-data ekonomi lainnya.