2. BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI 2.1 Tinjauan Pustaka Penganggaran merupakan suatu proses persiapan sebelum melakukan penyusunan rencana, pengumpulan data dan informasi yang dibutuhkan untuk rencana tersebut, pembagian tugas perencanaan, implementasi hingga pengawasan dan evaluasi dari hasil rencana tersebut. Hasil dari penganggaran ini disebut dengan anggaran (Mulyadi, 2010). Sebenarnya cukup banyak para ahli yang mengemukakan pendapat tentang apa itu anggaran, namun isinya masih mempunyai banyak kesamaan. Jika disimpulkan maka anggaran merupakan suatu rencana dengan bentuk satuan uang dan unit mengenai kegiatan yang akan dilaksanakan oleh perusahaan, institusi pemerintahan atau organisasi-organisasi lainnya dalam periode waktu tertentu di masa yang akan datang, biasanya periode waktu yang digunakan dalam penganggaran adalah 1 tahun. Menurut Ellen et.al. (Christina Ellen, 2001) tujuan dari penyusunan anggaran adalah: 1. Untuk menyatakan sasaran dari rencana organisasi secara jelas dan formal, sehingga bisa menghindari kerancuan serta memberikan suatu arah dari apa yang ingin dicapai oleh manajemen. 2. Untuk menyampaikan apa yang diharapkan oleh manajemen kepada pihak-pihak terkait sehingga anggaran dapat dimengerti, didukung, dan dilaksanakan. 3. Untuk menyediakan rencana yang rinci mengenai aktivitas agar bisa mengurangi ketidakpastian serta memberika arahan kepada pihak terkait dalam mencapai tujuan organisasi. 4. Untuk mengkoordinasi cara atau metode yang akan dilakukan agar bisa mengoptimalkan sumber. 5. Untuk menyediakan tindakan pengukur dan mengendalikan pihak-pihak terkait, menyediakan informasi untuk mengetahui perlu tidaknya tindakan koreksi. Penerapan Sistem Informasi pada suatu lembaga adalah hal yang bisa membantu manajemen dalam melaksanakan penganggaran. Piska Andesi, Linda Atika, dan Evi Yulianingsing (Andesi, Atika, & Yulianingsing, 2016) telah membuat sebuah jurnal penelitian tentang “Sistem Informasi Pengelolaan Alokasi 4 5 Dana Desa di Desa Sukarami”, pada penelitian tersebut menjelaskan bahwa penganggaran dana dengan cara manual mempunyai kelemahan dalam sisi keamanan. Data yang ada kurang terjamin disebabkan karena data tersebut mudah dimanipulasi oleh pihak yang tidak berhak dalam mengakses sehingga bisa menyebabkan kesalahan dalam pembuatan laporan. Oleh karena itu pembuatan sistem informasi dibutuhkan agar bisa menghasilkan keakuratan serta keamanan yang bisa mempermudah dalam pembuatan laporan. Pelaporan pada sebuah sistem penata anggaran adalah suatu struktur dan proses meliputi aspek-aspek yang berkaitan dengan penyediaan, pelaporan, dan penyampaian informasi tentang penganggaran di sistem informasi tersebut (Komarasari, 2017). Pelaporan dianggap penting karena menyediakan informasi yang berguna bagi pengguna potensial untuk proses pengambilan keputusan yang rasional tentang perencanaan anggaran yang akan datang, dapat membantu dalam penilaian jumlah, waktu, serta ketidakpastian prospek penerimaan atau pengeluaran pada suatu penganggaran (Wahyudi, 2013). Dari beberapa sumber di atas, dapat diambil kesimpulan bahwa penerapan teknologi pada sistem penganggaran cukup dibutuhkan mengingat pembuatan dan penyimpanan datanya tidak mudah dalam dimanipulasi oleh pihak-pihak tidak bertanggung jawab. Sistem informasi untuk penganggaran ini dibutuhkan agar mempermudah proses penganggaran serta pelaporan dari penganggaran itu sendiri. Berdasarkan penelitian yang penulis ambil, yaitu sistem pelaporan pada sistem informasi penata anggaran pada Fakultas Teknik UMY berbasis MVC, maka penulis mengembangkan sistem pelaporannya menggunakan Crystal Report sebagai aplikasi pembuat laporan. 2.2 Landasan Teori Dalam pembuatan sistem reporting atau pelaporan ini, penulis menggunakan beberapa landasan teori sebagai berikut: 2.2.1 Penganggaran Anggaran merupakan suatu rencana yang disusun secara sistematis dengan bentuk angka yang dinyatakan dalam unit moneter yang meliputi semua kegiatan yang ada dalam suatu lembaga untuk jangka waktu (periode) tertentu untuk masa yang akan datang. Oleh karena rencana yang disusun dinyatakan dalam unit moneter, maka anggaran seringkali disebut juga sebagai rencana keuangan. Dalam anggaran, satuan kegiatan dan satuan uang menjadi suatu hal yang sangat penting dalam arti segala kegiatan akan dikuantifikasikan dalam satuan uang, sehingga bisa diukur hasil efisiensinya serta efektivitas dari kegiatan yang dilakukan (Christina Ellen, 2001). 6 Penganggaran merupakan komitmen resmi manajemen yang terkait dengan harapan manajemen tentang pendapatan, biaya serta berbagai transaksi kegiatan dalam periode tertentu untuk masa yang akan datang. Dengan adanya anggaran, maka rencana-rencana lembaga akan lebih banyak keberhasilannya dengan ditunjang oleh kebijaksanaan-kebijaksanaan yang terarah dan dibantu oleh perencanaan-perencanaan yang matang. Suatu lembaga yang mempunyai pandangan kedepan, cenderung akan memikirkan apa saja yang ingin dilakukan untuk masa yang akan datang. Sehingga jika sudah mempunyai rencana-rencana yang sudah dibuat sebelumnya, lembaga ini tinggal menjalankannya saja. Di mana, bagaimana, mengapa, dan kapan merupakan pertanyaan-pertanyaan yang selalu mereka kembangkan dalam kegiatan seharihari. Ide-ide untuk kegiatan yang akan datang seringkali didapatkan berdasarkan jawaban dari pertanyaan-pertanyaan di atas. Dalam perusahaan manufaktur (parbrik) kegiatan yang dilakukan akan lebih efisien dan penghasilan yang didapatkan akan lebih besar jika manajemen memperhatikan rencana-rencana yang akan dilakukan pada masa yang akan datang. Penganggaran mempunyai manfaat-manfaat yang pada umumya adalah sama, yaitu dalam hal perencanaan, koordinasi, dan pengawasan. Dalam bidang perencanaan: a. Mendasarkan kegiatan-kegiatan pada penelitian-penelitian dan penyelidikan-penyelidikan studi. Anggaran bermanfaat untuk membantu manajer dalam menyelidiki masalah-masalah yang ada untuk membuat sebuah perencanaan. Dengan kata lain, sebelum mengadakan sebuah perencanaan kegiatan, maka dilakukan sebuah penelitian terlebih dahulu. Kebiasaan dalam pembuatan perencanaan akan berdampak baik bagi semua kegiatan, terutama kegiatan-kegiatan tentang kebutuhan financial, tingkat persediaan, fasilitas-fasilitas produksi, pembelian, pengiklanan, penjualan, sales promotion, pengembangan produk, ekspansi, dan lain-lain. b. Mengerahkan seluruh tenaga-tenaga dalam lembaga untuk menentukan arah yang tepat untuk mendapatkan hasil yang maksimal. c. Untuk membantu dan menunjang kebijakan-kebijakan lembaga. d. Menentukan tujuan-tujuan yang tepat untuk lembaga. Manajemen yang dapat menentukan tujuan yang jelas dan logis (dapat dilaksanakan) adalam manajemen yang berhasil. Anggaran dapat membantu pihak manajemen dalam memilih tujuan mana yang dapat dilaksanakan dan yang tidak dapat dilaksanakan. e. Membantu menstabilkan kesempatan kerja yang tersedia. Seorang atasan yang baik tidak akan pernah mengabaikan kesejahteraan bawahannya. 7 Perencanaan kebutuhan tenaga kerja yang tepat dapat menghindari kelebihan atau kekurangan tenaga kerja. Tanpa perencanaan tenaga kerja yang baik, akan mengakibatkan terpaksanya pemberhentian tenaga kerja. Bila terus menerus terjadi, hal ini akan membuat tingkat kesempatan kerja menjadi tidak stabil. f. Mengakibatkan pemakaian alat-alat fisik secara efektif. Dengan disusun perencanaan yang baik dan terperinci, maka akan menghindarkan dari pemakaian biaya-biaya yang berlebihan. Dalam bidang koordinasi: a. Membantu mengkoordinasikan faktor manusia dengan lembaga. Dalam beberapa situasi hubungan manusia dengan lembaga ini adalah hal terpenting. Dalam beberapa kasus, seorang manajer tidak tahu apa yang harus dilakukannya untuk tahun-tahun yang akan datang. Akibatnya kadang-kadang membuat manajer menjadi frustasi dan merasa menjadi semakin tidak mampu mengatasinya. Jika ada penyusunan anggaran yang terperinci maka akan membantu manajer dalam mengatasi masalah itu, sehingga kembali merasa adanya hubungan antara kemampuannya dengan lembaga yang dipimpinnya. b. Menempatkan penggunaan modal pada saluran-saluran yang tepat. Sebelum membelanjakan uangnya, lembaga harus mempelajari terlebih dahulu saluran mana yang paling tepat dengan program lembaga. c. Untuk mengetahui kelemahan-kelemahan yang ada dalam organisasi. Setelah rencana disusun dan dilaksanakan. Kelemahan-kelemahan akan terlihat untuk kemudian diperbaiki. Dalam bidang pengawasan: a. Untuk mengawasi kegiatan-kegiatan dan pengeluaran-pengeluaran. Tujuan utama dari perencanaan adalah memilih kegiatan yang paling tepat untuk lembaga. Kegiatan-kegiatan tersebut tidak hanya direncanakan, tetapi dalam pelaksanaannya juga harus diawasi agar sesuai dengan rencana yang ada. b. Agar mencegah pemborosan-pemborosan. Sebenarnya ini adalah tujuan yang paling umum dari penyusunan anggaran. Kontrol terhadap pelaksanaan-pelaksanaan kegiatan diharapkan agar dapat mengurangi pemborosan-pemborosan. 8 Dengan melihat uraian di atas dapat ditarik kesimpulan bahwa manfaat penyusunan anggaran adalah: a. Adanya perencanaan yang terpadu. Anggaran lembaga dapat dijadikan alat dalam pembuatan perencanaan lembaga serta menjalankan pengendalian dari berbagai kegiatan tersebut secara menyeluruh. Dengan demikian, anggaran merupakan suatu alat dalam manajemen yang digunakan baik untuk keperluan perencanaan ataupun pengendalian. b. Sebagai pedoman dalam pelaksanaan kegiatan lembaga. Anggaran dapat memberikan pedoman yang berguna baik untuk manajemen puncak maupun manajemen menengah. Anggaran yang disusun dengan baik akan membuat bawahan menyadari bahwa manajemen mempunyai pemahaman yang baik tentang operasi lembaga. Bawahan juga akan mendapatkan pedoman yang jelas dalam melaksanakan tugasnya. c. Sebagai alat pengkoordinasian kerja. Penganggaran dapat memperbaiki koordinasi di dalam lembaga. Sistem anggaran memberikan ilustrasi operasi lembaga secara keseluruhan. d. Sebagai alat pengawasan kerja. Anggaran memerluakan serangkaian standar prestasi atau target yang bisa dibandingkan dengan realisasi dari pelaksanaan setiap kegiatan, sehingga pelaksanaan kegiatan tersebut dapat dinilai kinerjanya. e. Sebagai alat evaluasi kegiatan lembaga. Anggaran yang disusun dengan baik dan tepat akan memberikan pedoman bagi perbaikan operasi lembaga dalam menentukan langkah-langkah yang harus ditempuh agar pekerjaan dapat dilaksanakan dengan cara yang baik. Adanya penyimpangan yang terjadi dalam operasi perlu dilakukan evaluasi yang dapat menjadi masukan berharga bagi penyusunan anggaran selanjutnya. 2.2.2 Sistem Informasi Menurut Kadir (2014), yang dimaksud sistem informasi sebenarnya tidak harus melibatkan komputer. Sistem informasi yang menggunakan komputer biasa disebut sebagai sistem informasi berbasis komputer (Computer-Based Information System atau CBIS). Dalam prakteknya, istilah sistem informasi seringkali dipakai tanpa embel-embel berbasis komputer, padahal dalam kenyataannya komputer merupakan bagian yang penting. 9 Tabel 2.1 Definisi Sistem Informasi Sumber Alter (1992) Bodnar dan Hopwood (1993) Gelinas, Oram, dan Wiggins (1990) Hall (2001) Turban, McLean, dan Wetherbe (1999) Wilkinson (1992) Definisi Sistem informasi adalah kombinasi antar prosedur kerja, informasi, orang, dan teknologi informasi yang diorganisasikan untuk mencapai tujuan dalam sebuah organisasi. Sistem informasi adalah kumpulan perangkat keras dan perangat lunak yang dirancang untuk mentransformasikan data ke dalam bentuk informasi yang berguna Sistem informasi adalah suatu sistem buatan manusia yang secara umum terdiri atas sekumpulan komponen berbasis komputer dan manual yang dibuat untuk menghimpun, menyimpan, dan mengelola data serta menyediakan informasi keluaran kepada para pemakai Sistem informasi adalah sebuah rangkaian prosedur formal di mana data dikelompokkan, diproses menjadi informasi, dan didistribusikan kepada pemakai Sebuah sistem informasi mengumpulkan, memproses, menyimpan, menganalisis, dan menyebarkan informasi untuk tujuan yang spesifik Sistem informasi adalah kerangka kerja yang mengkoordinasikan sumber daya (manusia, komputer) untuk mengubah masukan (input) menjadi keluaran (informasi), guna mencapai sasaran-sasaran perusahaan. Berdasarkan berbagai definisi sistem informasi yang tercantum dalam tabel 2.1, dapat disimpulkan bawa sistem informasi mencakup sejumlah komponen (manusia, komputer, teknologi informasi, dan prosedur kerja), ada sesuatu yang diproses (data menjadi informasi), dan dimaksudkan untuk mencapai suatu sasaran atau tujuan (Kadir, 2014). 10 2.2.3 UML (Unified Modeling Language) UML (Unified Modeling Language) merupakan sebuah bahasa ang menyediakan kosa kata umum teknik diagram yang cukup kaya untuk model proyek pengembangan sistem yang didapatkan dari analisis melalui implementasi (Dennis, Tegarden, & Wixom:, 2009). a. Use Case Diagram. Use Case merupakan salah satu UML (Unified Modeling Language) yang digunakan dalam membuat desain sebuah aplikasi. Menurut John Satzinger Use Case adalah sebuah kegiatan yang dilakukan oleh system, biasanya dalam menanggapi permintaan dari pengguna system (Satzinger, 2010). Notasi Use Case bias dilihat pada gambar 2.1. Gambar 2.1 Notasi Use Case b. Activity Diagram Activity Diagram adalah salah satu UML. Activity Diagram merupakan sebuah diagram yang menjelaskan alur kerja dengan berbagai kegiatan pengguna (atau sistem), orang yang melakukan masing-masing aktivitas, dan aliran sekuensial dari aktivitas-aktivitas tersebut (Satzinger, 2010). Notasi yang umum digunakan pada Activity Diagram bisa dilihat pada gambar 2.2. Gambar 2.2 Notasi Activity Diagram 11 Penjelasan pada notasi diatas adalah: • • • • • • Swimlane mewakili agen yang melakukan aktivitas. InitialState adalah awal dari alur kerja. ActionState melambangkan aktivitas tersendiri dalam alur kerja. Transition melambangkan urutan di antara aktivitas. FinalState adalah akhir dari alur kerja. Synchronization merupakan pembagi alur kerja yang membagi menjadi beberapa alur yang bersamaan ataupun menggabungkan kembali alur yang bersamaan. • Decision merupakan titik pengambilan keputusan dimana aliran proses tersebut akan mengikuti satu jalur atau jalur lainnya. c. Class Diagram Class Diagram adalah salah satu diagram yang ada pada UML. Class Diagram terbagi menjadi dua jenis, yaitu Domain Class Diagram dan Design Class Diagram. Domain Class Diagram berfokus kepada sesuatu dalam lingkungan kerja penggunanya, bukan pada class perangkat lunak yang akan dirancang. Sedangkan Design Class Diagram bertujuan untuk mendokumentasikan dan menggambarkan kelas-kelas dalam pemrograman yang akan dibangun (Satzinger, 2010). Representasi Class Diagram bisa dilihat pada gambar 2.3. Gambar 2.3 Contoh Class Diagram 12 Hubungan antar class: • • • • Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain atau class yang harus mengetahui adanya class lain. Lambang: Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”) atau biasa disebut relasi mempunyai sebuah. Lambang: Composition, yaitu sebuah kelas tidak bisa berdiri sediri dan harus merupakan bagian dari kelas lain. Lambang: Dependency, yaitu hubungan yang menunjukkan operasi pada suatu kelas yang menggunakan kelas yang lain. Lambang: 2.2.4 Pengembangan Aplikasi Berbasis Web Pengembangan aplikasi web adalah sebuah pembuatan serta pemeliharan sebuah aplikasi perangkat lunak untuk digunakan pada World Wide Web. Hal ini biasa dilakukan oleh para programmer, yang sudah akrab dengan kode untuk membuat sebuah web, seperti HTML, XML, Flash, Perl, CSS, PHP, JSP, ASP, dan lain-lain (Lestari, 2015). Aplikasi berbasis web menjadi begitu populer dikarenakan kemudahan untuk diakses oleh klien. Kemampuan untuk memperbaharui dan memlihara aplikasi web tanpa harus mendistribusikan dan melakukan instalasi perangkat lunak pada kemungkinan ribuan klien juga merupakan suatu alasan kepopulerannya. Beberapa jenis yang cukup populer dari aplikasi web adalah aplikasi yang diguakan untuk kantor. Banyak kantor modern sudah menggunakan aplikasi berbasis web dalam melakukan operasi bisnis, termasuk semua cara akuntansi dan fungsi pelacakan (Lestari, 2015). 2.2.5 Metode Model View Controller (MVC) Model View Controller (MVC) adalah sebuah metode untuk membuat sebuah aplikasi dengan memisahan data dari tampilan dan cara memprosesnya (Rahmadiansyah & Irwan, 2012). MVC pertama kali diperkenalkan oleh para peneliti di XEROC PARAC yang bekerja untuk pembuatan bahasa pemrograman Smalltalk pada tahun 1970 – 1980. Metode MVC membagi aplikasi menjadi tiga bagian yaitu : a. Model, berfungsi sebagai pengelola perilaku dan data pada domain aplikasi, melakukan tanggapan terhadap permintaan informasi dan merespon instruksi-instruksi untuk merubah suatu kondisi (state). 13 b. View, menerjemahkan informasi yang berasal dari model ke dalam sebuah bentuk sesuai untuk berinteraksi dengan pengguna. Biasanya berupa satu atau lebih elemen antarmuka pengguna. c. Controller, menerima masukkan dari pengguna dan memicu respon dengan membuat pemanggilan ke objek-objek model. Konsep MVC bisa dilihat pada gambar 2.4. Gambar 2.4 Konsep MVC Kelebihan-kelebihan dari metode MVC adalah sebagai berikut: a. Bagian model memberikan penempatan detil data yang terpisah dan tidak disebar di dalam keseluruhan aplikasi sehingga meningkatkan kecepatan dan fleksibilitas dalam proses pemeliharaan aplikasi. b. Pemisahan model juga mempermudah aplikasi lain untuk bisa menggunakan objek model ini untuk kebutuhan yang sama (reuse). c. Pemisahan view memudahkan dalam perakitan atau integrasi dengan komponen aplikasi lainnya tanpa harus memikirkan detil proses. Desainer hanya akan berkonsentrasi dalam pembuatan tampilan antarmuka pemakai (user interface). d. Penggunaan controller memungkinkan perubahan proses tanpa mengganggu antarmuka pemakai. Detil proses disembunyikan oleh controller sehingga tidak mengganggu presentasi ke pemakai maupun pengelolaan data/informasi (manajemen database). Di dalam aplikasi berbasis web dikenal beberapa jenis MVC, yaitu: a. Server Side MVC dimana seluruh proses bisnis dilakukan pada sisi server. b. Campuran Server Side dan Client Side MVC, dimana proses dilakukan di sisi klien serta sisi server, bisa menggunakan atau tidak menggunakan model dalam koneksi ke server dan biasanya memiliki kompleksitas yang tinggi. c. Rich Internet Application (RIA), disebut juga Fat Client, merupakan aplikasi web yang memiliki kemampuan dan fungsi mirip aplikasi desktop, memiliki bagian yang mengambil data sendiri (MVC tersendiri) dan hanya bagian model yang ada di bagian server. 14 2.2.6 ASP.NET ASP.NET (Active Server Pages.NET) merupakan sebuah web application framework yang dibuat dan dipasarkan oleh Microsoft untuk memudahkan programmer dalam membuat sebuah web dinamis, aplikasi web, dan web service (Prestiliano, Purwanto, & Septian, 2012). ASP.NET merupakan pengembangan lebih lanjut dari ASP biasa, karena ASP.NET dibuat dengan dasar pemikiran yang berbeda sehingga ASP tidak dapat dijalankan sebagai program ASP.NET (Mira Laksmi Indriasari, 2007). ASP.NET merupakan komponen Internet Information Services (IIS). Oleh karena itu, untuk menginstalasi ASP, harus juga menginstalasikan IIS. ASP.NET adalah komponen utama Windows yang membuat IIS dapat menjalankan aplikasi berbasis .NET. 2.2.7 Microsoft Sql Server SQL Server merupakan aplikasi database produk Microsoft yang memiliki fitur-fitur baru sehingga membuatnya menjadi suatu platform database yang sempurna, khususnya dalam mengolah data yang berskala besar (Kurnia, Tanuwijaya, & Sagirani, 2013). Bahasa query utama yang digunakan SQL Server adalah Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase. Pada umumnya SQL Server digunakan dalam dunia bisnis yang memiliki basis data kecil hingga menengah, tetapi kemudian berkembang dengan digunakan pada basis data yang besar. Microsoft SQL Server termasuk DBMS (Database Management System) profesional. Beberapa pesaing seperti MySQL, Oracle, telah mengembangkan aplikasi serupa dalam beberapa tahun terakhir. Namun SQL server lebih mudah digunakan serta memiliki lebih banyak fitur. Hal ini dikarenakan adanya dukungan penuh dari Microsoft. Perangkat lunak yang ditawarkan oleh Microsoft memiliki integrasi yang erat dengan .NET framework dimana hal ini tidak dimiliki oleh produk lain (Ilman, 2016). 2.2.8 Microsoft Visual Studio Microsoft Visual Studio adalah sebuah perangkat lunak lengkap (suite) yang bisa digunakan untuk membuat dan mengembangkan aplikasi, baik itu aplikasi bisnis, aplikasi personal, ataupun komponen aplikasinya, dalam bentuk aplikasi console, aplikasi Windows, ataupun aplikasi web. Microsoft Visual Studio saat ini sudah mencapai Microsoft Visual Studio 2017 dimana fitur-fiturnya juga semakin meningkat diantaranya adalah: a. Visual Studio membantu programmer dengan bantuan langsung saat menulis kode, apapun bahasa yang ditulis, baik itu C#/VB dan C++ ataupun JavaScript dan Python. IntelliSense yang ada dalam Visual Studio 15 mendeskripsikan API yang digunakan, dan menggunakan auto-completion untuk meningkatkan kecepatan dan akurasi dalam penulisan. b. Visual Studio juga mempunyai fitur bernama Code Lens. Fitur ini berfungsi untuk membantu programmer dalam memahami secara cepat struktur yang dipanggil da menelusuri fungsi yang berhubungan. c. Visual Studio juga membantu dalam menemukan masalah atau kesalahan dan menemukan solusinya. Dalam visual studio disematkan fitur berupa ikon lampu yang membantu daam mengidentifikasi dan menyelesaikan masalah umum dalam kode. Sebenarnya masih banyak fiitur-fitur yang ditawarkan oleh Visual Studio. Oleh karena itu, visual studio merupakan sebuah IDE (Integrated Developmet Environment) yang sangat populer dalam pembuatan aplikasi berbasiskan .NET framework (Microsoft, 2017). 2.2.9 Crystal Report for Visual Studio Crystal Report for Visual Studio adalah sebuah program tunggal yang telah terintegrasi dengan Microsoft Visual Studio. Cristal Report for VS adalah suatu program yang berfungsi untuk membantu programmer dalam membuat sebuah laporan secara langsung melalui Visual Studio (c-sharpcorner.com, 2016). Crystal Report for VS adalah program yang dikhususkan untuk pembuatan laporan, sehingga tidak bisa melakukan input di dalamnya. Crystal Report for VS juga bisa membaca dan mengambil sumber data melalui Microsoft Access, Fox Pro, SQL ataupun program-program database lainnya (Noviyani, 2009).