ASPECT ORIENTED PROGRAMMING DALAM MEMBANGUN APLIKASI BERBASIS SPRING  
STUDI KASUS : AKUNTANSI PERSEDIAAN  MENGUNAKAN METODE RATA-RATA BERGERAK

SKRIPSI

DISUSUN OLEH :

LEONILA LARATMASE
NIM			: 085610074
JURUSAN		: SISTEM INFORMASI
JENJANG		: STRATA SATU (S-1)

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER 
AKAKOM 
YOGYAKARTA
2010
ASPECT ORIENTED PROGRAMMING DALAM MEMBANGUN APLIKASI BERBASIS SPRING 
STUDI KASUS : AKUNTANSI PERSEDIAAN MENGUNAKAN METODE RATA-RATA BERGERAK

SKRIPSI

Diajukan sebagai Salah Satu Syarat
Untuk Memperoleh Gelar Sarjana Strata Satu (S-1)
Program Studi Sistem Informasi
Sekolah Tinggi Manajemen Informatika dan Komputer
AKAKOM
Yogyakarta

LEONILA LARATMASE
NIM			: 085610074
JURUSAN		: SISTEM INFORMASI
JENJANG		: STRATA SATU (S-1)

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AKAKOM 
YOGYAKARTA
2010
HALAMAN PERSETUJUAN PEMBIMBING

Judul	:	ASPECT ORIENTED PROGRAMMING DALAM MEMBANGUN APLIKASI BERBASIS SPRING STUDI KASUS : AKUNTANSI PERSEDIAAN MENGGUNAKAN METODE RATA-RATA BERGERAK
Nama	:	Leonila Laratmase
Nim	:	085610074
Jurusan	:	Sistem Informasi
Semester	: Ganjil 2009

Skripsi ini telah diperiksa dan disetujui
Yogyakarta, Februari 2010

Menyetujui,
Dosen Pembimbing

Bambang P.D.P., S.E, Akt., S.Kom, MMSI

HALAMAN PENGESAHAN

ASPECT ORIENTED PROGRAMING DALAM MEMBANGUN APLIKASI BERBASIS SPRING 
STUDI KASUS : AKUNTANSI PERSEDIAAN  MENGUNAKAN METODE RATA-RATA BERGERAK

SKRIPSI

Skripsi ini telah dipertahankan dan disahkan di depan dosen penguji
Sekolah Tinggi Manajemen Informatika dan Komputer
AKAKOM Yogyakarta, Pada
			Hari		:  Kamis
			Tanggal	:  4 Februari 2010
			Pukul		:  12.00 WIB
	
Dosen Penguji :					Tanda Tangan :
1.	L.N. Harnaningrum, S.Si., M.T.					1. 
2.	Badiyanto, S.Kom., M.Kom.			2. 
3.	Bambang P.D.P., S.E, Akt., S.Kom, MMSI			3. 		

Mengetahui/Mengesahkan,
Ketua Jurusan Sistem Informasi

L.N. Harnaningrum, S.Si.,M.T
HALAMAN PERSEMBAHAN DAN MOTTO

	Bersukacitalah dalam pengharapan, sabarlah dalam kesesakan dan bertekunlah dalam doa (Roma 12 : 12).

	Karena Tuhan memberi ajaran kepada yang dikasihi-Nya, seperti seorang ayah kepada anak yang disayanginya (Amsal 3 : 12). 

	Tebarkanlah harapanmu dalam iman maka engkau akan menuai hasil yang nyata, dan isilah hidupmu dengan perbuatan-perbuatan yang baik maka Dia  akan berkenan kepadamu dan memberkati engkau, serta orang-orang disekitarmu. (NN).

Skripsi ini kupersembahkan kepada :

Tuhan Yesus Kristus  yang selalu memberkatiku.
Kepada kedua orang tuaku yang selalu memberikan doa,  dukungan dan semua hal yang berguna ,  
Kakakku Andre, kedua adikku Leo dan Ita.
Untuk  Mas Kris, terimakasih buat spriritnya dan semua Ilmu.. maaf  selama ini terlalu merepotkan.
Semua Teman-Teman Jurusan yang tak kusebutkan satu per satu, terima kasih untuk semuanya….

INTISARI

Pada umumnya pembuatan sebuah aplikasi enterprise menggunakan metodologi object oriented programming. Dalam penggunaan metodologi ini seringkali terjadi code tangling dan code scattering, hal ini menyebabkan sistem memiliki duplikat kode dan fungsi-fungsi sederhana yang tidak jelas (crosscutting concern). Untuk itu diperlukan sebuah metodologi yang mampu memecahkan masalah tersebut.
Metodologi tersebut dikenal dengan nama Aspect Oriented Programming. Metodologi tersebut  merupakan metodologi yang dikembangkan untuk melengkapi metodologi object oriented programming. Metodologi ini berfungsi untuk memperbaiki modularitas program dengan membuat unit modular yang disebut dengan aspect. Dengan aspect pemrogram mampu mengimplementasikan setiap concern secara terpisah, sehingga mampu menghapus ketergantungan crosscutting concern dari modul yang sedang digunakan. 
Metodologi AOP juga dapat digunakan di berbagai macam framework, salah satunya adalah spring framework. Spring, bukan hanya sebuah framework seperti kebanyakan framework pada umumnya, Spring bisa dikatakan sebagai sebuah project  yang dikenal dengan sebutan sebagai Spring Portfolio Project.
Spring Portfolio Project melakukan banyak integrasi terhadap teknologi-teknologi yang canggih, antara lain adalah Spring AspectJ yang digunakan untuk melakukan implementasi terhadap metodologi aspect oriented programming dan Spring IoC yang digunakan untuk melakukan implementasi terhadap konsep dari Inversion of Control. Untuk mengimplementasikan konsep dari Inversion of Control Spring menyediakan sebuah container yang disebut dengan Spring IoC Container. Didalam container tersebut objek-objek yang diperlukan akan dikelola. 
Dengan adanya pengelolan objek-objek yang dilakukan oleh container secara terpusat, maka diharapkan pemrogram dapat lebih berkonsentrasi pada proses bisnis yang ada, sehingga mampu membuat aplikasi bisnis yang baik.

Kata Kunci : 	Aspect, Hibernate, Java, Persediaan, Spring, Transaction.

KATA PENGANTAR

Puji syukur kepada Tuhan Yang Maha Esa atas rahmat dan berkah yang diberikan kepada penulis sehingga dapat menyelesaikan skripsi yang berjudul “Aspect Oriented Programming Dalam Membangun Aplikasi Berbasis Spring Studi Kasus : Akuntansi Persediaan Menggunakan Metode Rata-Rata Bergerak”.
Selama dalam menyelesaikan skripsi ini penulis banyak mendapatkan  bantuan dan bimbingan serta dorongan dari berbagai pihak baik secara langsung maupun tidak langsung, oleh karena itu dalam kesempatan ini penulis ingin menyampaikan rasa terimakasih yang sebesar-besarnya kepada :
1.	Bapak Sigit Anggoro, S.T.,M.T., selaku ketua Sekolah Tinggi Manajemen Informatika Dan Komputer  Akakom Yogyakarta,
2.	Bapak Ir. M. Guntara, M.T., Selaku Pembantu Ketua I Sekolah Tinggi Manajemen Informatika Dan Komputer Yogyakarta,
3.	Ibu L.N. Harnaningrum, S.Si., M.T, Selaku ketua jurusan Sistem Informasi, Sekolah Tinggi Manajemen Informatika Dan Komputer Yogyakarta,
4.	Bapak Bambang P.D.P., S.E, Akt., S.Kom, MMSI Selaku dosen pembimbing yang selalu memberi bimbingan, arahan, petunjuk dan saran yang sangat besar manfaatnya dalam penyusunan skripsi ini,
5.	Bapak dan Ibu dosen Sekolah Tinggi Manajemen Informatika Dan Komputer  AKAKOM Yogyakarta,
6.	Bapak dan Ibu Staf serta seluruh civitas akademika STMIK AKAKOM Yogyakarta.
	Penulis menyadari bahwa didalam penyusunan skripsi ini masih banyak kekurangan, untuk itu saran yang membangun sangat penulis harapkan. Semoga skripsi ini bermanfaat bagi semua pihak tanpa pengeculian.
Yogyakarta, Januari 2010

Penulis

DAFTAR ISI

	Hal
HALAMAN SAMPUL DEPAN 	
HALAMAN JUDUL  		ii
HALAMAN PERSETUJUAN PEMBIMBING		iii
HALAMAN PENGESAHAN 		iv
HALAMAN PERSEMBAHAN DAN MOTTO 		v
INTISARI 		vi
KATA PENGANTAR 		vii
DAFTAR ISI 		ix
DAFTAR GAMBAR  		xii
BAB I  	PENDAHULUAN
1.1.	Latar Belakang Masalah 		1
1.2.	Rumusan Masalah 		2
1.3.	Ruang Lingkup 		2
1.4.	Tujuan 		3

BAB II 	DASAR TEORI
2.1	Tinjauan Pustaka 		4
2.2	Aspect Oriented Programming 		5
2.2.1	Crosscutting Concern		7
2.2.2	Transaction Management		7
2.3	Spring IoC Container		8
2.4	Hibernate		9
2.5	Java		10
2.5.1	Pengertian Java 		10
2.5.2	Kode Java		10
2.5.3	Konsep Kerja Java 		10
2.6	PostgreSQL		11
2.7	Persediaan 		11
2.7.1	Pengertian Sediaan 		11
2.7.2	Penentuan Kuantitas Sediaan 		11
2.7.3	Penentuan Nilai Sediaan 		12

BAB III 	ANALISIS DAN PERANCANGAN SISTEM
3.1	Perangkat Pendukung 		15
3.1.1	Perangkat Keras		15
3.1.2	Perangkat Lunak 		15
3.2	Perancangan Sistem  		15
3.2.1	Diagram Use Case 		15
3.2.2	Diagram Kelas 		16
3.2.3	Membuat Kelas Mapping 		18
3.2.3.1	Membuat Mapping Kelas User 		19
3.2.3.2	Membuat Mapping Kelas Merk 		21
3.2.3.3	Membuat Mapping Kelas Kategori 		21
3.2.3.4	Membuat Mapping Kelas Barang 		22
3.2.3.5	Membuat Mapping Kelas Alamat 		23
3.2.3.6	Membuat Mapping Kelas Supplier 		23
3.2.3.7	Membuat Mapping Kelas Customer 		24
3.2.3.8	Membuat Mapping Kelas Pembelian 		24
3.2.3.9	Membuat Mapping Kelas Detail Pembelian		25
3.2.3.10	Membuat Mapping Kelas Penjualan 		26
3.2.3.11	Membuat Mapping Kelas Detail Penjualan 		26
3.2.3.12	Membuat Mapping Kelas Sediaan 		27
3.2.4	Melakukan Mapping Kelas 		28
3.2.5	Pengaturan data source pada IoC Containers 		29

BAB IV 	IMPLEMENTASI SISTEM
4.1.	Implementasi Program 		32
4.1.1.	Role Persediaan 		33
4.1.1.1.	Halaman Input Data Kategori 		33
4.1.1.2.	Halaman Input Data Merk 		33
4.1.1.3.	Halaman Input Data Barang 		34
4.1.2.	Role Pembelian 		34
4.1.2.1.	Halaman Input Data Supplier 		34
4.1.2.2.	Halaman Input Data Transaksi Pembelian 		35
4.1.3.	Role Penjualan 		35
4.1.3.1.	Halaman Input Data Customer 		35
4.1.3.2.	Halaman Input Data Transaksi Penjualan 		36
4.1.4.	Role Manager 		36
4.1.4.1. Menu Laporan 		36

BAB V	KESIMPULAN DAN SARAN
5.1.	Kesimpulan 		39
5.2.	Saran-Saran 		39

DAFTAR PUSTAKA 	…………........………………………………………….	40
LAMPIRAN :
•	KARTU BIMBINGAN SKRIPSI

DAFTAR GAMBAR

	Hal
Gambar 3.1. Use Case Diagram 		16
Gambar 3.2.	Diagram Kelas		17
Gambar 4.1.	Tampilan Halaman Utama 		32
Gambar 4.2.	Tampilan Input Data Kategori 		33
Gambar 4.3.	Tampilan Input Data Merk 		33
Gambar 4.4.	Tampilan Input Data Barang		34
Gambar 4.5.	Tampilan Pesan Informasi Presentase Laba 		34
Gambar 4.6.	Tampilan Input Data Supplier 		35
Gambar 4.7.	Tampilan Input Data Transaksi Pembelian		35
Gambar 4.8.	Tampilan Input Data Customer 		36
Gambar 4.9. Tampilan Input Data Transaksi Penjualan 		36
Gambar 4.10. Tampilan Laporan Pembelian Persupplier 		37
Gambar 4.11. Tampilan Laporan Penjualan Barang 		38
Gambar 4.12. Tampilan Laporan Kartu Persediaan 		38