BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Sistem Menurut Rosenblatt (2014:6) Sistem adalah seperangkat komponen terkait yang menghasilkan hasil tertentu. Contohnya adalah Sistem khusus untuk lalu lintas rute internet, produksi microchip, dan kontrol entitas yang kompleks. Menurut O'Brien & Marakas (2010:4) sistem adalah seperangkat komponen yang saling terkait, dengan batas yang jelas, bekerja sama untuk mencapai tujuan dengan menerima input dan menghasilkan output dalam proses transformasi yang terorganisir. Berdasarkan Hardcastle (2011:8) sistem dapat didefinisikan sebagai kumpulan komponen yang bekerja sama untuk mencapai tujuan bersama. Tujuan dari sistem adalah untuk menerima masukan dan mengubahnya menjadi output. Satzinger, Jackson,& Burd(2011:6) berpendapat Sistem adalah kumpulan komponen yang saling terkait yang berfungsi bersama-sama untuk mencapai beberapa hasil. 2.1.2 Informasi Menurut O'Brien & Marakas (2010:34), Informasi adalah data yang telah ditempatkan dalam konteks yang berarti dan berguna untuk pemakai akhir. Berdasarkan Rainer Jr. & Cegielski (2010:12) Informasi adalah data yang sudah diolah sehingga mempunyai arti dan nilai bagi penerimanya. Rosenblatt (2014:6) mengatakan Informasi adalah data yang telah diubah menjadi output yang bernilai bagi pengguna. 2.1.3 Data Menurut O'Brien & Marakas (2010:34), Data adalah fakta-fakta yang masih mentah atau hasil observasi, yang biasanya berupa fenomena fisik atau transaksi bisnis. 7 8 Menurut Rainer Jr. & Cegielski (2010:12), data adalah penjelasan dasar benda, kejadian, fakta, aktifitas, dan transaksi yang dicatat, diklarifikasi dan disimpan tetapi tidak diorganisir untuk menyampaikan arti tertentu. Data bisa berupa angka, huruf, jumlah, suara dan gambar. Menurut Hardcastle(2011:7) Data adalah fakta mentah yang dapat berupa nomor atau pernyataan seperti tanggal atau pengukuran. Rosenblatt (2014:7) mengatakan bahwa Data adalah bahan mentah yang akan diubah oleh sistem informasi menjadi sebuah informasi yang berguna. 2.1.4 Sistem informasi O'Brien & Marakas (2010:4) berpendapat bahwa sistem informasi merupakan kombinasi teratur dari orang-orang, hardware, software, jaringan komunikasi dan sumber daya data yang mengumpulkan, mengubah, dan menyebarkan informasi dalam sebuah organisasi . Satzinger, Jackson, & Burd, (2011:6) mengatakan Sistem Informasi adalah sekumpulan komponen – komponen yang saling berhubungan satu sama lain, yang berfungsi untuk mengumpulkan, melakukan proses, menyimpan serta menyediakan keluaran sistem (output) sebagai informasi yang dibutuhkan untuk menyelesaikan tugas – tugas bisnis. Menurut Thomas M. Connoly & Carolyn E. Begg(2014:346), sistem informasi adalah sumber daya yang memungkinkan pengumpulan, pengaturan, pengontrolan, dan penyebaran informasi diseluruh organisasi. 2.1.5 Database Menurut Thomas M. Connoly & Carolyn E. Begg, (2014:63) Database adalah suatu koleksi data yang berhubungan secara logikal dan juga deskripsi dari data tersebut, dibuat untuk memenuhi kebutuhan informasi suatu organisasi. Berdasarkan O'Brien & Marakas (2010:181) Database adalah sekumpulan elemen data yang saling berhubungan secara logikal dan saling terintegrasi. 9 2.1.6 Database management system (DBMS) Menurut Thomas M. Connoly & Carolyn E. Begg (2014:64) Database Management System adalah sebuah sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol akses ke database. DBMS adalah perangkat lunak yang berinteraksi dengan program aplikasi pengguna dan database. Biasanya, DBMS menyediakan fasilitas sebagai berikut: 1. Memungkinkan pengguna untuk mendefinisikan database, biasanya melalui Data Definition Language(DDL). DDL memungkinkan pengguna untuk menentukan tipe data dan struktur dan pembatas pada data yang akan disimpan dalam database. 2. Memungkinkan pengguna untuk memasukkan, update, menghapus, dan mengambil data dari database, melalui Data Manipulation Language (DML). Memiliki sebuah repositori pusat untuk semua data dan data deskripsi memungkinkan DML untuk memberikan fasilitas penyelidikan umum untuk data ini, yang disebut bahasa query. Penyediaan bahasa query meredakan masalah dengan sistem berbasis file dimana pengguna harus bekerja dengan fixed set pertanyaan atau ada proliferasi program, menyebabkan perangkat lunak utama masalah manajemen. 3. Menyediakan akses terkontrol ke database. Sebagai contoh, dapat memberikan: - Sistem keamanan, yang mencegah pengguna yang tidak sah mengakses database - Sistem integritas, yang mempertahankan konsistensi data yang disimpan. - Sistem kontrol concurrency, yang memungkinkan akses bersama ke database - Sistem kontrol pemulihan, yang mengembalikan database ke konsisten sebelumnya negara berikut perangkat keras atau kegagalan perangkat lunak 10 - Katalog diakses pengguna, yang berisi deskripsi dari data dalam database. 2.1.7 Database system lifecycle Menurut Thomas M. Connoly & Carolyn E. Begg(2014:347) untuk merancang aplikasi sistem basis data diperlukan tahapan – tahapan yang dinamakan dengan siklus hidup aplikasi basis data (database system development lifecycle). Tahapan – tahapan database system development life cycle adalah sebagai berikut : Gambar 2. 1 Database System Life Cycle (Connolly & Begg, 2014:348) 1. Database Planning. 2. System Definition. 3. Requirements Collection and Analysis. 4. Database Design. 5. DBMS Selection. 11 6. Application Design. 7. Prototyping. 8. Implementation. 9. Data Conversion and Loading. 10. Testing. 11. Operational Maintenance 2.1.7.1 Database planning Thomas M. Connoly & Carolyn E. Begg, (2014:347) Dalam tahapan ini merencankan bagaimana langkah-langkah dalam database agar dapat di wujudkan se-efiesien dan se-efektif mungkin. Perencanaan database harus diintergrasi dengan seluruh strategi SI yang ada pada organisasi. Langkah pertama yang penting dalam perencanaan database adalah dengan jelas mendefinisikan mission statement dari sistem database. Mission statement mendefinisikan mission objective dari sistem database. Mereka yang mendorong proyek database dalam organisasi (seperti sebagai Direktur dan / atau pemilik) biasanya yang menentukan mission statement. Sebuah mission statment membantu memperjelas tujuan dari sistem database dan memberikan penjelasan yang lebih jelas agar dapat terciptanya sistem database yang efisien dan efektif. Setelah mission statement didefinisikan, aktivitas berikutnya adalah mengidentifikasi mission objective. Setiap mission objective harus mengidentifikasi tugas tertentu yang mendukung sistem database. Asumsinya adalah bahwa jika sistem database mendukung mission objective, maka mission statement harus dipenuhi. Mission statement dan objective bisa disertai dengan beberapa informasi tambahan yang menentukan secara umum pekerjaan yang harus dilakukan, sumber daya yang dapat digunakan untuk melakukannya, dan uang untuk membayar untuk itu semua 2.1.7.2 System definition Thomas M. Connoly & Carolyn E. Begg, (2014:350) Penentuan System Definition digunakan untuk mendeskripsikan 12 jangkauan dan batasan dari aplikasi database serta pandangan pandangan utama para pengguna aplikasi. Sebelum mendesain suatu sistem database, terlebih dahulu melakukan identifikasi batasanbatasan dari sistem yang sedang diselidiki dan bagaimana kaitannya dengan bagian lain dari sistem informasi perusahaan. Termasuk dalam ruang lingkup dan batas sistem database adalah pandangan utama pengguna yang harus didukung oleh database. 2.1.7.2.1 User view User View mendefinisikan apa yang dibutuhkan dari sistem database berdasarkan perspektif dari peran pekerjaan tertentu (seperti Manager atau Supervisor) atau perusahaan daerah aplikasi (seperti pemasaran, personalia, atau kontrol stok). Sebuah sistem database mungkin memiliki satu atau lebih pandangan pengguna. Mengidentifikasi pandangan pengguna suatu aspek penting dari pengembangan sistem database karena membantu untuk memastikan bahwa tidak ada pengguna utama database yang dilupakan ketika mengembangkan persyaratan untuk sistem database baru. Pandangan pengguna juga sangat membantu dalam pengembangan dari sistem database yang relatif kompleks. 2.1.7.3 Requirement collection and analysis Menurut Thomas M. Connoly & Carolyn E. Begg (2014:350), Requirement collection and analysis merupakan proses mengumpulkan dan menganalisis informasi dari organisasi yang akan di dukung oleh aplikasi database, dan informasi ini digunakan untuk mengidentifikasi kebutuhan pengguna aplikasi terhadap sistem baru. Ada 3 macam pendekatan untuk mengatur sebuah kebutuhan aplikasi basis data dengan berbagai cara pandang pengguna yaitu : 1. Pendekatan Terpusat (Centralized) Menurut Thomas M. Connoly & Carolyn E. Begg (2014:352), kebutuhan untuk setiap sudut pandang pengguna disatukan menjadi satu set kebutuhan untuk 13 aplikasi basis data. Umumnya pendekatan ini digunakan untuk basis data yang tidak terlalu rumit. 2. Pendekatan Integrasi Sudut Pandang (View Integration) Menurut Thomas M. Connoly & Carolyn E. Begg (2014:350), kebutuhan untuk setiap pandangan pengguna digunakan untuk membangun sebuah model data - data terpisah yang merepresentasikan tiap pandangan pengguna sistem. Hasil dari model data – data tersebut kemudian disatukan di bagian perancangan basis data. 2.1.7.4 Database design Menurut Thomas M. Connoly & Carolyn E. Begg (2014:354), perancangan basis data merupakan proses pembuatan suatu desain atau rancangan untuk sebuah basis data yang akan mendukung operasional dan target suatu perusahaan. Berikut tahapan dalam database design adalah : 2.1.7.4.1 Conceptual database design Proses konstruksi model dari data yang digunakan dalam suatu organisasi, yang independen dari semua pertimbangan fisik. Konseptual data model terdiri dari tipe entitas, tipe relasi, attributes dan attribute domains, primary keys and alternate keys, integrity constraints. Model data konseptual didukung oleh dokumentasi, termasuk ER diagrams dan kamus data, yang diproduksi di seluruh pengembangan model. Berikut merupakan tahap dari perancangan database konseptual : 1. Mengidentifikasi tipe entitas 2. Mengidentifikasi tipe hubungan (relationship) 3. Mengidentifikasi dan menghubungkan atribut - atribut dengan tipe entitas atau relasi (relationship) 4. Menentukan domain atribut 5. Menentukan atribut candidate, primary dan alternate key 14 6. Mempertimbangkan penggunaan enhanced modeling concepts 7. Memeriksa model akan adanya redudansi 8. Memvalidasi model konspetual lokal terhadap transaksi pengguna 9. Meninjau kembali model data konseptual dengan pengguna 2.1.7.4.2 Logical Database Design Proses konstruksi model dari data yang digunakan dalam suatu organisasi berdasarkan dari sebuah data model yang spesifik, tapi independen dari DBMS tertentu dan juga pertimbangan fisik lainnya. Berikut merupakan tahapan dalam merancang database logikal : 1. Membuat relasi untuk model data logikal 2. Melakukan validasi relasi menggunakan normalisasi 3. Melakukan validasi relasi terhadap transaksi pengguna 4. Memeriksa batasan – batasan integritas 5. Meninjau kembali model data logikal dengan pengguna 6. Menggabungkan model data logikal menjadi model data global (optional) 7. Mengecek perkembangan di masa depan 2.1.7.4.3 Physical Database Design Proses memproduksi sebuah deskripsi dari implementasi sebuah database pada secondary storage. Fase ini mendeskripsikan relasi, organisasi file, dan juga indexindex yang digunakan untuk mencapai akses data yang efisien, dan semua Integrity Constraint dan Security Measures yang terasosiasi. Tujuan utama dari perancangan database fisikal adalah : 15 - Membuat seperangkat tabel relasi dan juga constraint-constraint tabel relasi tersebut dari informasi yang terdapat pada logical data model. - Identifikasi struktur penyimpanan yang spesifik dan metode akses data untuk mencapai performa yang optimal - Melakukan desain proteksi keamanan dari sistem. Berikut merupakan tahapan dalam perancangan database fisikal : 1. Menerjemahkan model data logikal untuk sasaran DBMS 1.1 Merancang relasi dasar 1.2 Merancang representasi dari derived data 1.3 Merancang general constraint 2. Merancang organisasi file dan indeks 3.1 Menganalisis transaksi 3.2 Memilih organisasi file 3.3 Memilih indeks 3.4 Memperkirakan Kebutuhan Ukuran Disk 3. Merancang user view 4. Merancang mekanisme keamanan 2.1.7.5 DBMS selection Connolly & Begg (2014:350) Berpendapat, seleksi DBMS adalah kegiatan memilih DBMS yang akan digunakan dalam pembuatan basis data. Pemilihan DBMS yang tepat sangat mendukung aplikasi basis data. Langkah utama dalam pemilihan DBMS adalah sebagai berikut : 1. Mendefiniskan waktu untuk melakukan studi referensi. 2. Mencatat 2 atau 3 jenis produk yang akan dievaluasi untuk digunakan. 3. Mengevaluasikan produk tersebut. 16 4. Merekomendasikan produk yang dipilih dan membuat laporan yang mendukung DBMS tersebut. 2.1.7.6 Application design Menurut Connolly & Begg (2014:363), application design adalah proses merancang user interface atau antarmuka pengguna dan program aplikasi yang menggunakan dan memproses basis data. Terdapat 2 aspek penting dalam perancangan aplikasi, yaitu: 1. Transaction Design Transaksi merupakan sebuah tindakan atau seperangkat tindakan, yang dilakukan oleh pengguna atau program aplikasi, yang mengakses atau mengubah isi dari database. Ada tiga jenis transaksi : - Retrieval Transaction Digunakan untuk mendapatkan kembali data untuk ditampilkan dalam suatu laporan. - Update Transaction Digunakan untuk memasukkan data, menghapus data lama, atau mengubah data yang sudah ada dalam database. - Mixed Transaction Merupakan kombinasi antara Retrieval Transaction dan Update Transaction. 2. User Interface Design Guidelines Sebelum mengimplementasikan sebuah form atau laporan, penting bagi kita untuk terlebih dahulu mendesain tampilannya. Terdapat beberapa pedoman dalam merancang form atau laporan, yaitu : - Judul yang bermakna. - Instruksi yang mudah dipahami. - Pengelompokkan yang logis dan kolom yang berurutan. - Visualisasi tata letak yang menarik dari laporan. - Nama field yang mudah dipahami - Terminologi dan singkatan yang konsisten. - Warna yang digunakan konsisten. 17 - Ruang dan batas-batas untuk field memasukkan data jelas. - Pergerakan kursor yang mudah. - Perbaikan kesalahan pada masing-masing karakter dan seluruh field. - Menampilkan pesan error untuk nilai yang tidak dapat diterima. - Field pilihan ditandai dengan jelas. - Pesan yang jelas untuk field. - Adanya pemberitahuan selesai, ketika pengguna selesai mengisi field dari suatu formulir. 2.1.7.7 Prototyping Menurut Connolly & Begg (2014:363), Prototyping adalah pembuatan model kerja dari system database. Terdapat 2 strategi untuk Prototyping, yaitu : 1. Requirements Prototyping Menggunakan sebuah Prototype untuk menentukan kebutuhan dari sistem database dan ketika kebutuhan sudah terpenuhi Prototype tidak digunakan lagi. 2. Evolutionary Prototyping Digunakan untuk tujuan yang sama, namun perbedaannya adalah Prototype yang sudah dipakai tidak dibuang, namun dikembangkan sehingga menjadi sistem database yang baru. 2.1.7.8 Implementation Menurut Connolly & Begg (2014:367), pengertian implementasi yaitu membuat definisi database secara eksternal, konseptual, dan internal termasuk program aplikasi. 2.1.7.9 Data Conversion and Loading Menurut Connolly & Begg (2014:368), data conversion and loading adalah proses mentransfer data yang sudah ada kedalam 18 database baru dan mengubah aplikasi yang sudah ada untuk di jalankan pada database baru. 2.1.7.10 Testing Menurut Connolly & Begg (2014:368), testing adalah proses menjalankan aplikasi untuk menemukan kesalahan – kesalahan. Dan menurut Srinivas Nidhra and Jagruthi Dondeti (2012:29), software testing dibagi menjadi 2 yaitu black-box testing dan whitebox testing. Black-box testing juga disebut uji fungsional, teknik pengujian fungsional menguji kasus-kasus berdasarkan informasi dari spesifikasi yang telah diberikan. Dengan black-box testing, penguji software seharusnya tidak memiliki akses ke kode internal sumber itu sendiri. Sedangkan white-box testing disebut juga pengujian struktural, teknik pengujian struktural menguji kasus-kasus berdasarkan informasi yang diperoleh dari sumber kode(source code). 2.1.7.11 Operational Maintenance Menurut Connolly & Begg (2014:369), Operational Maintenance adalah proses mengawasi dan memelihara sistem database yang di ikuti dengan instalasi. 2.1.8 Database Languages Menurut Connolly & Begg (2014:89), dalam pembuatan database bahasa yang digunakan untuk membuat sebuah database terbagi menjadi 2 bagian : yaitu Data Definition Language ( DDL ) dan Data Manipulation Language ( DML ). 2.1.8.1 Data Definition Language (DDL) Menurut Connolly & Begg (2014:90), DDL adalah sebuah bahasa yang memungkinkan DBA ( Database Administrator ) dan pengguna untuk menjelaskan dan menamakan entitas, atribut, dan juga relasi yang dibutuhkan untuk aplikasi, bersama dengan integritas yang berhubungan dan batasan keamanan. 19 2.1.8.2 Data Manipulation Language (DML) Menurut Connolly & Begg (2014:90),, DML adalah sebuah bahasa yang menyediakan seperangkat operasi untuk mendukung operasi dasar manipulasi data pada data yang disimpan dalam database. Operasi manipulasi data biasanya mencakup: 1. Penambahan data baru 2. Modifikasi data yang tersimpan dalam database 3. Pengambilan data yang terdapat pada database 4. Penghapusan data dari database 2.1.9 Normalization Thomas M. Connoly & Carolyn E. Begg (2014:451) mengatakan normalisasi adalah teknik desain database yang dimulai dengan memeriksa hubungan(Disebut dependensi fungsional) antara atribut. Tujuan dari normalisasi adalah untuk mengidentifikasi satu set yang cocok dari hubungan yang mendukung persyaratan data perusahaan. 2.1.10 ER Modeling ER Modeling adalah pendekatan top-down untuk desain database yang dimulai dengan mengidentifikasi data penting yang disebut entitas dan hubungan antara data yang harus ditampilkan di dalam model. Kemudian menambahkan rincian, seperti informasi yang kita inginkan untuk ditampung pada entitas dan hubungan yang disebut atribut dan batasan apapun pada entitas, hubungan, dan atribut. 2.1.11 Activity Diagram Activity diagrams model adalah aliran kontrol dari satu aktivitas ke aktivitas lainnya. Activity diagram biasanya merupakan permohonan operasi, langkah dalam suatu bisnis proses, atau keseluruhan bisnis proses. Diagram menunjukkan aliran kontrol dan cabang ( berlian kecil ) dapat digunakan untuk menentukan jalur alternatif transisi. 20 2.2 Teori khusus 2.2.1 SQL server SQL Server Management Studio adalah sebuah lingkungan terpadu untuk mengakses, mengkonfigurasi, mengelola, dan mengelola semua komponen SQL Server. Management Studio menggabungkan sekelompok alat grafis yang luas dengan lima editor naskah yang kaya untuk menyediakan akses ke SQL Server untuk pengembang dan administrator dari semua tingkat keahlian. Management Studio dirancang untuk mengembangkan dan mengelola objek database , dan untuk mengelola dan mengkonfigurasi layanan analisis objek yang sudah ada . 2.2.2 Visual studio Visual Studio adalah sebuah kumpulan lengkap dari peralatan pengembangan aplikasi untuk menciptakan aplikasi web ASP.NET, servis web XML, aplikasi desktop, dan aplikasi mobile. Visual Basic, Visual C# dan visual C++ menggunakan integrated development environment(IDE) yang sama, yang memungkinkan untuk membagikan peralatan dan mempermudah dalam menciptakan solusi bahasa gabungan. Bahasa-bahasa tersebut menggunakan fungsi dari .NET framework, yang menyediakan akses ke teknologi-teknologi utama yang menyederhanakan pengembangan dari aplikasi web ASP dan servis web XML. 2.2.3 C# C# adalah sebuah bahasa pemograman yang elegan yang memungkinkan developer untuk menciptakan aplikasi dengan berbagai macam variasi dan unggul yang berjalan dalam .NET framework. Anda dapat menggunakan C# untuk membuat aplikasi Windows, XML web service, komponen-komponen distribusi, aplikasi client-server, aplikasi database, dan lain-lain. Visual C# menyediakan sebuah editor code terdepan, desainer antarmuka yang mudah, debugger terpadu, dan peralatan peralatan lainnya yang membantu dalam menciptakan aplikasi berbasis bahasa C# dan .NET framework. 21 2.2.4 Crystal Reports Software SAP® Crystal Reports® adalah software dengan standar de facto dalam pembuatan suatu laporan. Dengan SAP Crystal Reports , pengguna dapat membuat laporan yang kuat, banyak format, dan dinamis dari hampir semua sumber data. SAP Crystal Reports dapat disampaikan dalam puluhan format , dengan 24 lebih bahasa yang berbeda. Dengan menggunakan SAP Crystal Reports ternyata dapat membuat hampir semua sumber data menjadi interaktif , informasi yang ingin ditindaklanjuti dapat diakses secara offline atau online, melalui aplikasi, portal dan perangkat mobile. 2.2.5 Inventory management (Thomas Bronack,2012) Manajemen persediaan adalah disiplin yang berlaku pada seluruh perusahaan yang berkaitan dengan identifikasi dan pelacakan aset Layanan Informasi (IS) hardware dan software. Tiga bidang utama yang menjadi perhatian adalah: 1. Akuisisi. 2. Pemindahan. 3. Terminasi. Prosedur akuisisi didirikan untuk membantu personil dalam pengadaan software dan hardware produk. Tujuan utamanya adalah untuk memastikan dasar kebenaran yang tepat dilakukan dan pedoman keuangan diikuti. Prosedur pemindahan bertanggung jawab untuk memastikan bahwa aset dapat dilacak ketika dipindahkan dari satu lokasi ke lokasi lain dan pertimbangan anggaran disesuaikan dengan kebutuhan. produk dipindahkan bersama dengan pemilik aslinya kemudian sistem inventori diperbarui sesuai dengan lokasi barunya. Jika lokasi suatu produk dan pemiliknya pindah, maka sistem inventori harus diperbarui sesuai dengan pemilik dan lokasi baru. pada kasus ini, produk lama dihapus dari budget pemilik asli dan ditambahkan ke budget pemilik baru. Penghentian bertanggung jawab untuk menghapus aset dari persediaan ketika dihentikan, atau diganti. Anggaran pemilik akan diperbarui untuk mencerminkan penghentian aset dan aset tidak lagi terdaftar ketika laporan lokasi dihasilkan. 22 Inventarisasi Sistem dipelihara dalam database yang mengikat aset pemiliknya dan mendefinisikan lokasi di mana aset tersebut berada. Kepentingan relatif dari aset ditambahkan ke catatan persediaan (yaitu, Kekritisan = 1-5, di mana 1 adalah "Paling Kritis"). Berdasarkan informasi ini spesialis perencanaan kontingensi dapat merencanakan pemulihan aset yang diperlukan untuk mendukung operasi bisnis. 23 2.3 Kerangka Pikir Gambar 2. 2 Kerangka Pikir 24