BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Sistem informasi yang baik akan menyimpan dengan baik setiap proses transaksi yang terjadi ke dalam database. Hal ini menjadi hal yang krusial, karena ini menjadi titik vital dari perusahaan, karena setiap transaksi perusahaan tercatat dengan baik. Untuk menunjang itu diperlukannya penggunaan database yang baik. Dalam proses database saat ini sering menggunakan database relational atau RDBMS. Proses database ini menggunakan query untuk memanggil data dari database. Sebuah sistem informasi akan sering melakukan proses query ke dalam database, hal ini untuk mendapatkan data yang sesuai dan dalam keadaan real. Untuk itu diperlukan sebuah proses query database yang baik. Proses CRUD ini akan menjadi sangat penting karena, akan memberatkan sistem jika proses berlangsung secara serampangan. Salah satu prosesnya adalah teknik normalisasi dari database, teknik ini sudah sering digunakan dan menjadi bagian penting. Salah satu teknik penting di dalam proses CRUD ke database, kita bisa menggunakan teknik ORM atau Object Relational Mapping, terlebih teknik ini akan sangat bekerja optimal di bawah pengaruh Object Oriented. Saat ini sebuah teknik programming sudah mengarah pada teknik Object Oritented, dan saat ini sudah menjadi teknik yang sering digunakan. Hal ini dikarenakan dengan teknik ini, kita bisa menggunakan sebuah object di satu class dan menggunakannya lagi di class lainnya. Sehingga kita tidak perlu menulis Class atau object yang akan kita pakai. Sayangnya hal ini tidak berlaku di database, di teknik query database, masih menggunakan teknik query conventional, sehingga kita perlu menulis ulang query yang akan kita gunakaan. Dengan teknik ORM kita tidak perlu menulis ulang query yang akan kita pakai. Teknik ORM akan berfungsi sebagai jembatan antara object dari aplikasi dan database. Hal ini dikarenakan ORM akan membentuk objek database virtual yang bisa dipanggil oleh objek pada bahasa pemograman OOP. I-1 I-2 Berdasarkan sistem informasi yang dibahas diatas, penulis akan menampungnya dalam sebuah laporan tugas akhir yang berjudul ” Implementasi Object Relational Mapper pada CRUD Database Sistem Inventori”. 1.2 Rumusan Masalah Sehubungan dengan latar belakang diatas, dalam pembuatan Tugas Akhir ini, terdapat beberapa rumusan masalah yaitu : 1. Bagaimana cara menggunakan teknik ORM dalam melakukan query ke dalam database? 1.3 Maksud dan Tujuan Penelitian Terdapat beberapa tujuan yang ingin dicapai dalam pembuatan tugas akhir ini. Adapun tujuan-tujuan tersebut antara lain : 1. Membangun sistem informasi yang sudah menggunakan teknik ORM pada teknik CRUD databasenya 2. Memberikan informasi dasar dalam penggunaan teknik ORM didalam pemograman berbasis objek. 1.4 Batasan Masalah Agar penulisan laporan tugas akhir ini dapat lebih terfokus dan terarah, maka penulis membatasi penyusunan laporan ini terhadap apa yang akan diuraikan dan dibahas adalah sebagai berikut lain: 1. Informasi yang ada dalam aplikasi ini terbatas pada Implementasi teknik Object Relational Mapping atau ORM. 2. Teknik ORM ini di implementasikan ke dalam sebuah sistem informasi inventory. 3. Sistem informasi inventory dibatasi dalam fitur – fitur yang sesuai dengan topik, hal ini agar pembahasan topik tidak merembet kemana-mana. Batasan Fitur : I-3 - Data Barang Masuk - Data Stock Barang - Data Supplier 1.5 Metode Pembangunan Perangkat Lunak Pembangunan aplikasi ini menggunakan Metode Rekayasa Perangkat Lunak dengan Model Waterfall yang merupakan suatu metode pengembangan software yang bersifat sekuensial dan terdiri dari 5 tahap yang saling terkait dan mempengaruhi yaitu analisa kebutuhan, desain sistem, penulisan kode program, pengujian program dan penerapan program. Keterkaitan dan pengaruh antar tahap ini ada karena output sebuah tahap dalam Waterfall. Model ini merupakan input bagi tahap berikutnya, dengan demikian ketidaksempurnaan hasil pelaksanaan tahap sebelumnya adalah awal ketidaksempurnaan tahap berikutnya. Memperhatikan karakteristik ini, sangat penting bagi tim pengembang dan perusahaan untuk secara bersama-sama melakukan analisa kebutuhan dan desain sistem sesempurna mungkin sebelum masuk ke dalam tahap penulisan kode program. Berikut adalah penjelasan detail dari masing-masing tahap dalam Waterfall model : 1. Analisa Kebutuhan (Requirement) merupakan tahap pertama yang menjadi dasar proses pembuatan aplikasi selanjutnya. Pengumpulan data dalam tahap ini bisa dilakukan sebuah penelitian wawancara atau study literatur. 2. Design Sistem (Design System) proses design akan menterjemahkan syarat kebutuhan kesebuah perancangan perangkat lunak yang dapat diperkirakan sebelum dibuat koding. Proses ini berfokus pada, struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosuderal. Tahapan ini akan menghasilkan dokumen yang disebut software requirement. Dokumen inilah yang akan digunakan programmer untuk melakukan aktivitas pembuatan sistemnya. I-4 3. Penulisan kode program merupakan tahap penerjemahan desain aplikasi yang telah dibuat ke dalam bentuk perintah-perintah yang dimengerti komputer dengan mempergunakan bahasa pemrograman, middleware dan database tertentu di atas platform yang menjadi standar perusahaan. 4. Pengujian Program/aplikasi dilakukan untuk memastikan bahwa aplikasi yang dibuat telah sesuai dengan desainnya dan semua fungsi dapat dipergunakan dengan baik tanpa ada kesalahan. 5. Penerapan program dan pemeliharaan. Penerapan program merupakan tahap dimana tim pengembang menerapkan/meng-install aplikasi yang telah selesai dibuat dan diuji ke dalam lingkungan Teknologi Informasi perusahaan dan memberikan pelatihan kepada pengguna di perusahaan. Pada saat melaksanakan pelatihan perusahaan harus yakin bahwa semua karyawan benar-benar menguasai sistem Informasi yang dibuat sesuai dengan tugas, kewenangan dan tanggung-jawabnya. Pemeliharaan termasuk dalam memperbaiki kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unitsistem dan peningkatan jasa sistem sebagai kebutuhan baru. I-5 1.6 Sistematika Penulisan Adapun untuk sistematika pembahasan laporan ini yaitu: Bab satu pendahuluan, Pada bagian ini akan dibahas mengenai latar belakang masalah, rumusan masalah, tujuan dan manfaaat penelitian, batasan masalah, metodelogi pembangunan perangkat lunak serta sistematika penulisan. Bab dua landasan teori, Pada bagian ini akan dibahas mengenai landasan teori yang digunakan dalam penulisan laporan tugas akhir ini. Bab tiga analisis sistem, Pada bagian ini akan dibahas analisis sistem yang terdiri dari identifikasi masalah, deskripsi kerja sistem yang sedang berjalan, deskripsi kerja sistem yang akan dibangun dan pemodelan sistem yang digambarkan menggunakan Unified Modeling Language (UML). Bab empat perancangan sistem, Pada bagian ini akan dibahas mengenai rancangan aplikasi sistem yang akan dibangun, termasuk didalamnya perancangan antarmuka dan basis data. Bab lima implementasi sistem, Pada bagian ini akan dibahas implementasi rancangan aplikasi sistem mulai dari hardware, software dan implementasi antarmuka yang siap digunakan. Bab enam kesimpulan dan saran, Pada bagian ini akan dibahas kesimpulan dan saran-saran terhadap kekurangan yang terdapat pada aplikasi yang telah dibangun.