BAB II
TINJAUAN PUSTAKA
2.1 Tinjauan Institusi 2.1.1 Struktur Organisasi PD3 Struktur organisasi PD3 digunakan untuk mengetahui keterkaitan dari setiap proses yang ada
serta aktor-aktor yang akan berinteraksi dengan sistem, sehingga dapat ditentukan lingkup
dari sistem. Gambar 2 berikut ini menunjukkan struktur organisasi dari PD3.
Gambar 2 Struktur Organisasi PD3
7
BAB II Tinjauan Pustaka
8
2.1.2 RAB
RAB merupakan singkatan dari rancangan anggaran biaya. RAB dalam kegiatan Ormawa
adalah penghitungan banyaknya biaya yang diperlukan untuk melaksanakan sebuah kegiatan,
serta biaya-biaya lain yang berhubungan dengan pelaksanaan kegiatan, baik secara taksiran maupun secara detil. Setiap komponen harga harus sesuai dengan Standar Biaya Umum yang dikeluarkan
oleh
Polban.
Di
dalam
menentukan
komponen
biaya
harus
dapat
dipertanggungjawabkan dengan realistis. Contoh format RAB dapat dilihat pada Tabel 1. Tabel 1 Format RAB Sub-
Komponen
Persiapan
Volume
Harga Satuan
Jumlah
Konsumsi
Pelaksana
Evaluasi Pelaporan
Satuan
1.1 Makan
OK
1
15,000
1.2 Snack
OK
1
5,000
Akomodasi mhs
OH
1
150,000
Akomodasi Pembimbiing
OH
1
300,000
Uang Saku mhs
OH
1
75,000
SPPD
OH
1
350,000
Perjalanan
dan
………
2.1.3 Sub-aktivitas Subaktivitas adalah satu tahapan pelaksanaan pada mekanisme dan rancangan.Sebagai contoh adalah pembentukan panitia, seleksi peserta lomba, evaluasi dan penyusunan laporan.Setiap subaktivitas harus diidentifikasi kebutuhan sumberdayanya berdasarkan format yang ada. Berikut ini Tabel 2 merupakan contoh format dari sub-aktivitas. Tabel 2 Format Sub-Aktivitas Mekanisme
<Bulan>
<Bulan>
<Bulan>
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
9
Program Kerja
1
2
3
4
1
2
3
4
1
2
3
4
<sub-aktivitas a>
<sub-aktivitas b> n> <sub-aktivitas
2.1.4 LPJ
Dalam dunia organisasi setiap program kerja harus dievaluasi dan dipertanggungjawabkan
pada pihak yang berwenang. Biasanya dibutuhkan laporan pertanggungjawaban. Laporan pertanggungjawaban (LPJ) adalah sebuah dokumen tertulis yang berisi laporan kegiatan yang sudah selesai dilaksanakan. LPJ berisi evaluasi dan juga realisasi anggaran (beserta bukti
pembayaran setiap transaksi). Selain sebagai bentuk pertanggungjawaban terhadap jurusan dan universitas atau diserahkan kemana sebelumnya proposal diajukan, LPJ juga diharapkan bisa menjadi pembelajaran bagi kepanitiaan/organisasi jika ingin mengadakan kegiatan sejenis di masa depan.
2.1.5 Pagu Anggaran Pagu anggaran adalah batas tertinggi anggaran. Dalam kegiatan Ormawa, pagu anggaran digunakan untuk memberi batasan biaya dalam melaksanakan kegiatan, seperti biaya untuk honor dosen, honor transportasi, honor Pembina.
2.2 Konsep Dasar Aplikasi Pengelolaan Kegiatan Ormawa Edward Yourdon membagi sistem secara hirarki menjadi dua, yaitu sistem alam dan sistem yang dibuat oleh manusia. Sistem yang dibuat oleh manusia terdiri atas sistem yang terotomasi dan yang tidak. Aplikasi pengelolaan kegiatan Ormawa lebih berfokus pada sistem yang terotomatisasi, berupa sistem yang dibuat agar dapat dikendalikan oleh satu atau lebih komputer. Selain dari aspek komputer, sistem juga memerlukan komponen pendukung lain yaitu data, prosedur dan manusia.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
10
2.3 Tinjauan Teknologi
2.3.1 Enterprise Resource Planning
ERP
merupakan
aplikasi
pengelolaan
kegiatan
Ormawa
yang
dirancang
untuk
mengkoordinasikan semua sumber daya, informasi, dan aktivitas yang diperlukan untuk
proses bisnis lengkap. ERP diciptakan untuk menjawab tantangan mengolah jumlah data dan
informasi yang besar secara optimal dan terintegrasi. Aplikasi ERP Opensource yang paling
banyak digunakan adalah Adempiere.
2.3.2 ADempiere
Adempiere adalah salah satu software ERP yang bersifat open source. ADempiere didirikan
bulan September 2006 sebagai tindak lanjut ketidaksepakatan para pengembang compiere dengan perusahaan komersil dibelakangnya : Compiere inc. Database sql merupakan database yang disupport oleh Adempiere. 2.3.2.1 Tabel di ADempiere Prefiks khusus Is: Tipe Data: Char(1) Nilai: Y/N Prefiks ini digunakan untuk kolom bertipe penanda ya/tidak, contoh, IsApproved, IsActive dan IsVendor. Ada beberapa hal penting yang perlu diperhatikan tentang tabel yang dikustomisasi, yaitu: Kolom yang dibutuhkan Ada tujuh kolom wajib yang harus dibuat pada setiap tabel baru yang akan dipakai di ADempiere. Kolom-kolom tersebut yaitu: AD_Client_ID AD_Org_ID IsActive Created CreatedBy Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
11
a. Updated
b. UpdatedBy
2. Kolom yang disarankan a. Value (untuk kata kunci pencarian), Name, Description, Help
3. Nama kolom bersifat case sensitive.
Tipe Data References 1.
TableDir a.
Nama Kolom tanpa _ID adalah Nama Table
2.
Jika kolom: C_BPartner_ID maka tabel adalah C_BPartner
Search a.
Sama seperti TableDir: ditampilkan dalam jendela Search dan Info bukan dalam bentuk ComboBox
3.
4.
Table a.
Mendefinisikan Display Kolom dan Key Kolom
b.
Kolom CreatedBy = Table: C_BPartner - Display: Name - Key: C_BPartner_ID
Dynamic Validation Rules a.
Isi di evaluasi ketika mengubah variable.
AD_Column.AD_Table_ID=@AD_Table_ID@
Kolom Khusus 1.
Processed a. Tipe Data: CHAR(1) - Nilai: Y/N b. Dipakai untuk semua tabel transaksi. c. Jika Y maka datanya hanya bisa dibaca (Read-Only). d. Kolom ditandai sebagai kolom yang bisa di update.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
12
e. Ketika tabel memiliki kolom ini, tombol history pada toolbar, aktif. Tombol
history digunakan untuk mengetahui data mana saja yang mengalami perubahan dalam jangka waktu tertentu (hari, minggu, bulan, tahun)
2.
Posted
a. Tipe Data: CHAR(1) - Nilai: Y/N
b. Jika terisi Y maka ditampilkan sebagai tombol posting. 3.
Processing
a. Tipe Data: CHAR(1) - Nilai: Y/N b. Kunci untuk kumpulan proses.
c. Second use for starting any Process. 4.
Record_ID a. Tipe Data: NUMBER(10)
Kolom yang biasa di gunakan di tabel master 1.
Value a. Tipe Data: NVarchar2 (40) b. Search Key atau Code
2.
3.
Name a.
Tipe Data: NVarchar2 (60)
b.
Menampilkan nama.
Description a. Tipe Data: NVarchar2(255)
4.
Help a. Tipe Data: NVarchar2(2000) b. Help atau Komentar
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
13
Kolom Virtual
Kolom virtual adalah kolom yang tidak disimpan di database. Saat didefinisikan, nama kolom adalah sinonim dari ekspresi SQL yang didefinisikan. Contoh: "Updated-Created" akan
membuat kolom yang menampilkan informasi usia entri dalam jangka waktu hari.
Kolom virtual dibuat dalam window Table and Column (di Kamus Aplikasi). Ekspresi SQL dimasukan di kolom SQL pada tab ‘tab’.
2.3.2.2 Variabel Konteks
Variabel konteks seperti variabel 'global' untuk Adempiere keseluruhan, atau untuk window
tertentu atau tab. Semua variabel konteks dapat dilihat di Tools -> Preference -> Konteks.
Konteks variabel dimulai dengan # didefinisikan di tingkat Login. Setiap field di sebuah window memiliki variabel konteks sendiri, dan dapat diakses secara programatik. Membaca konteks variabel AD_Role_ID int currole_id = Env.getContextAsInt(ctx, "#AD_Role_ID");
2.3.2.3 Menu Icon Pada menu ADempiere yang tersedia, terdapat empat icon yang berbeda. Arti setiap icon dapat dijelaskan dalam Tabel 3 berikut. Tabel 3 Menu Icon di ADempiere
Icon
Deskripsi Normal ADempiere Window or Form: window ini digunakan untuk mengelola catatan, memasukkan catatan, atau melihat transaksi (misalnya, Purchase Order, Sales Order, dan Akuntansi Saldo Fakta). Selain itu, ikon ini digunakan untuk melakukan suatu kegiatan yang memanfaatkan bentuk ADempiere (misalnya, Pencocokan PO-Penerimaan-Faktur, Loader Impor File, dan sebagainya). Process: ikon ini melakukan tugas atau pekerjaan yang bisa dilakukan dalam database (misalnya, menghasilkan pengiriman dan saldo pembaruan akuntansi).
Reports: menghasilkan laporan yang dapat dimodifikasi, diekspor, dan dicetak dengan mudah (misalnya, neraca Saldo dan laporan rekening).
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
14
General Workflow: terus menerus langkah-demi-langkah kegiatan untuk mencapai tujuan (misalnya, akuntansi Setup dan Konfigurasi Pajak).
2.3.2.4 Menu Drop Down Window ADempiere menggunakan sebuah antarmuka dasar window untuk menjalankan semua fungsi
fungsinya. Setiap window memiliki tampilan umum. Window terdiri dari beberapa menu dropdown, suatu standar icon atau tombol, dan field untuk mengentrikan data.
Masing-masing window akan berisi banyak shortcuts dan tools yang berisi window Main
Menu. Sebagai contoh, masing-masing window terdiri atas sebuah menu drop down yang terdiri dari menu File, menu View, menu Tools, menu Window, dan menu Help seperti terlihat pada Gambar 3 berikut.
Gambar 3 Menu-Menu di Window ADempiere
2.3.2.5 Button Bar Berikut ini deretan menu-menu dropdown button bar di ADempiere yang biasa digunakan. Button-button ini merupakan standar window ADempiere. Icon Undo Changes menghapus aksi terakhir atau kembali pada bagian yang terakhir disimpan. Icon Help meluncurkan menu help internal ADempiere dan menawarkan banyak informasi tentang masing-masing field dan fungsi dalam window tertentu. Icon New Record membuat record baru dalam database. Icon Delete Record secara permanen menghapus record. Sekali sebuah record dihapus, tidak bisa dikembalikan lagi.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
15
Icon Delete Selected Items mengizinkan untuk menyeleksi beberapa record dan
menghapusnya dalam waktu bersamaan. Ketika beberapa record dihapus, record tersebut tidak bisa dikembalikan lagi.
Icon Save akan menyimpan semua perubahan record. Icon ini tidak dapat dipilih jika tidak
ada perubahan pada record. Icon juga akan meberi peringatan jika tidak ada record yang akan disimpan.
Icon Query merefresh window dan mengupdate beberapa perubahan yang disimpan. Icon ini berguna ketika beberapa orang mengakses record yang sama secara bersamaan.
Icon Lookup Record menawarkan cara cepat untuk menemukan beberapa record yang
memiliki kriteria spesifik. Icon Attachment mengizinkan untuk melampirkan file atau image untuk record. Tipe file yang mendukung termasuk text dan file spreedsheet. Icon Chat digunakan untuk berkomunikasi antara pengguna ADempiere dan untuk merekam catatan. Icon Grid Toggle mengizinkan untuk melihat record dan informasi lain dalam sebuah jaringan atau sebuah daftar. Icon History menampilkan perubahan yang dibuat untuk record terbaru dalam hari, minggu, bulan, tahun terakhir atau semua perubahan yang terjadi selama record dibuat. Icon Menu mengembalikan ke screen Menu. Icon six Arrow untuk maju atau mundur antara parent dan detail record, dan antara yang pertama, sebelumnya, selanjutnya dan record terakhir. Icon Report menggenerate sebuat report dari window saat ini digunakan yang bisa menjadi lebih mudah diformat untuk email, print atau export dalam sebuah variasi dari format pdf, html, xml, csv, txt, dan lain-lain. Icon Preview Record menampilkan record saat ini dan menampilkan window dan form sebelum dicetak.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
16
Icon Archive Documents/Reports untuk menyimpan sebuah report atau dokumen untuk akses
kemudian. Untuk menyimpan sebuah report, klik icon sekali. Untuk mengakses tanggal, klik dan tahan icon sampai daftar yang disimpan tampil.
Icon Print mengirim form ke pengaturan printer.
Icon Zoom Across menyediakan referensi otomatis ke window yang lain dalam ADempiere yang berisi informasi yang samayang sedang ditampilkan. Fungsi ini mungkin hanya bekerja
pada window tertentu.
Icon Active Workflows membuka dan menampilkan semua alur kerja terkait window atau
field.
Icon Check Requests untuk menciptakan sebuah permintaan baru dan sebelum mengisi field dengan informasi dari window yang aktif. Icon Product Info meluncurkan sebuah window yang bisa mengecek inventori dan ketersediaan produk. Icon Exit Window menutup window yang aktif. Mengklik icon ini akan menutup window tanpa menyimpan informasi yang dientrikan. 2.3.2.6 Framework Kamus Aplikasi Sebuah aplikasi framework secara utama membantu untuk mengembangkan aplikasi tanpa mulai dari scratch. ADempiere memiliki tampilan dan accessories yang banyak untuk bekerja secara stabil. Seperti fitur-fitur dan accessories yang ada tidak perlu dicoding dalam mendesain software. Software baru yang diciptakan hanya bisa mengenali DataModel sebagai tabel dan kolom yang diatur tanpa Windows dan melekat pada Menu Trees. Setiap user yang login akan dikontrol dengan menyediakan Roles untuk diakses atau tidak pada Menu dari Windows, Processes atau Reports. Berikut ini gambaran dari framework kamus aplikasi ditunjukkan pada Gambar 4.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
17
Gambar 4 Framework Kamus Aplikasi
2.3.2.7 Arsitektur Aplikasi ADempiere ADempiere framework mengizinkan beberapa field dalam tabel dan kolom model untuk callout. Callout akan melakukan sesuatu pada kolom lain ketika terjadi perubahan pada satu kolom. Aksinya bisa membaca dan menghitung nilai baru untuk beberapa field pada tab. Penghitungan bisa diakses beberapa tabel atau mengubah nilai tanpa database. Callout bisa dicompile dalam source code Java atau dalam form metadata tanpa coding. Arsitektur aplikasi ADempiere dapat dilihat pada Gambar 5.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
18
Gambar 5 Arsitektur Aplikasi ADempiere
2.3.2.8 Skenario Pengembangan Kamus Aplikasi
Gambar 6 Pengembangan Kamus Aplikasi
Gambar 6 di atas menggambarkan skenario pengembangan dari kamus aplikasi. Langkah pertama dalam skenario pengembangan kamus aplikasi adalah mengonfigurasi tabel database. Konfigurasi ini merupakan proses membuat dan meng-update tabel serta kolom dan menyinkronkan perubahan ke database. Selanjutnya membuat dan mengupdate windows, fields, dan buttons dengan mengatur tampilannya. Setelah itu membuat referensi data untuk combo box, disesuaikan di kolom yang mana data akan diambil. Kemudian menambahkan Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
19
logika untuk field, bagaimana data dan fields akan ditampilkan, menghubungkan antara data
yang satu dan yang lain.
Skenario berikutnya adalah proses pengembangan dan laporan (coding) yang mana dalam
proses ini ada penambahan callout atau proses menempelkan fields, buttons, dan actions
menggunakan scripts java. Selanjutnya pengembangan aplikasi atau module dalam ADempiere. Langkah ini adalah proses pembuatan package menggunakan sistem packing ADempiere. Package yang telah dibuat diexport (packout) untuk kemudian didistribusikan ke
pengguna lain (packin) yang mungkin akan mengembangkan package tersebut. Pada pross
pack out, semua package diubah menjadi XML package. Tipe package yang dapat diexport
dalam pack out adalah application/module, file/code, role, table, data, window, process/report, dan lain-lain.
2.3.2.9 Tipe Package Komponen yang bisa dibuat packagenya adalah sebagai berikut. 1. Application/Module - mengizinkan pengguna untuk mengekspor semua objek dengan sebuah aplikasi atau modul termasuk window, field, field grup, tabel dan kolom, menu-menu, referensi, report, form untuk sebuah contoh. 2. File/Code - memungkinkan pengguna untuk mengekspor kustom kode java atau file lain yang diperlukan dengan mengekspor aplikasi atau proses packaging. 3. Role - memungkinkan pengguna untuk mengekspor role yang mencakup semua akses yang diperlukan sebagaimana yang didefinisikan dalam role tersebut. 4. Code Snippet - ini memungkinkan pengguna untuk mengganti potongan kode/teks dalam sebuah file. 5. Table - memungkinkan pengguna untuk mengekspor tabel. Ini berguna ketika sebuah tabel tidak direferensikan oleh kamus aplikasi tetapi hanya kode kustom. 6. Data - memungkinkan pengguna untuk mengekspor data transaksional melalui statement SQL Select. 7. Window - memungkinkan pengguna untuk memasukkan window atau memodifikasi package. Ini akan mengekspor semua objek yang berhubungan dengan pengaturan window seperti yang didefinisikan dalam kamus aplikasi. 8. Import Format - memungkinkan pengguna untuk memasukkan package dalam format import. Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
20
9. Process/Report - memungkinkan pengguna untuk mengekspor proses atau report yang
akan dimasukkan dalam package.
10. Report View - memungkinkan memungkinkan pengguna untuk mengekspor ReportView untuk sebuah package. 11. Form – memungkinkan pengguna untuk mengekspor form kustom untuk sebuah
package. 12. SQL Statement – memungkinkan pengguna untuk memproses SQL Statement dalam pengolahan package. Dapat digunakan sebagai contoh untuk menambah/drop indeks, constraint, fungsi atau prosedur.
13. Workflow - ini memungkinkan pengguna untuk mengekspor alur kerja yang termasuk
dalam paket. 14. Dynamic Validation Rule 15. Message 16. PrintFormat 2.3.2.10 Entering Data, Fields, and Buttons Masing-masing window dalam ADempiere akan memberi kesempatan untuk memasukkan data. Tipe dari data yang dapat diterima tergantung fungsi masing-masing window. Tipe data yang paling umum digunakan seperti String, Number, Date.
Beberapa fields dalam ADempiere memiliki fungsi helper, yang dapat mempermudah dalam mengentri data serta mengurangi kemungkinan kesalahan saat entri data. Fungsi helper ini diindikasikan oleh sebuah icon/button pada bagian kanan field. Yang termasuk fungsi helper
seperti Calender Tool, Calculator Tool, Search, dan Info windows. Account Elemen account mengontrol tampilan detail dari seleksi Accounting Dimension atau kombinasi yang biasanya ditemukan pada tabs Accounting. Data yang bisa dientrikan dalam
field kombinasi adalah sebagai text. Icon account (
) bisa ditekan untuk mengaktifkan
account dialog. Amount Amount adalah numeric fields dengan ketelitian minimum 2 tempat decimal dan maksimum
12. Amount fields biasanya digunakan untuk nilai monetary. Semua numeric fields Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
21
menggunakan Calculator Tool sebagai fungsi helper. Klik icon (
) untuk mengakses
calculator.
Date
Date mengontrol ketetapan data sebagai waktu dalam format yang konsisten dengan sistem
pengguna. Untuk mempermudah pengentrian, pada kasus ini menggunakan fungsi helper
Calender Tool yang dapat dibuka dengan mengklik icon (
) untuk mengetrikan tanggal.
Pengentrian data tanggal seperti ini disebut date picker.
Field di atas merupakan field yang biasa digunakan. Masih banyak field lainnya dengan tipe
data berbeda satu sama lainnya ataupun yang menggunakan fungsi helper yang membantu dalam pengentrian data seperti assignment dengan fungsi helper untuk membuat schedule,
color merupakan cara untuk mengatur warna dalam database, control FileName untuk menampung nama file yang dapat ditemukan dalam direktori lokal, ID untuk mengontrol identitas secara spesifik dalam table menggunakan *_ID field, field, field image digunakan untuk menampilka gambar yang disimpan dalam database sebagai binary data atau terhubung ke sebuah URL, field search digunakan untuk mencari data yang tampil sebagai combo box dengan daftar dari nilai yang tersedia.
2.3.2.11 ADempiere Window Aplikasi Adempiere mengacu pada Window, setiap Window hadir dengan tab-tab yang mana setiap tab itu terkait secara database, tab yang paling atas adalah master dari transaksi barbasis
Window. Setiap isian tab di dalam Window umumnya standar, ada yang berbentuk Calendar, referensi dari table lain, ataupun memanggil Form atau Window lainnya. 2.3.2.12 ADempiere Form Adempiere Form diperlukan untuk menginput yang lebih kompleks dan tidak dapat dilakukan dengan Window, yaitu sebuah pengembangan Form yang mengacu pada
pemrograman berbasis objek menggunakan Java. Untuk penggunaan Form ini bisa diselipkan coding java. Beberapa contoh Form didalam Adempiere diantaranya adalah Form untuk Material yang selalu ada disetiap toolbar Window, dengan iconnya yang berbentuk bujur sangkar. Matching
transaksi antara invoice, Receipt dan Purchase Order adalah contoh lain dari Form. Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
22
2.3.3 SchemaSpy
SchemaSpy adalah tool berbasis Java yang menganalisis metadata dari skema dalam database
dan menghasilkan representasi visual ke dalam bentuk yang bisa ditampilkan lewat browser. yang digunakan adalah versi 5.0.0 dengan tampilan seperti pada Gambar 7. SchemaSpy
Gambar 7 SchemaSpy GUI
Aplikasi lain yang digunakan untuk menjalankan SchemaSpy diantaranya: 1. Java versi 1.6.0-b105 2. Graphviz 2.28 Digunakan untuk menghasilkan representasi grafik dari relasi tabel/view. 3. SchemaSpy GUI Antarmuka grafik untuk menjalankan SchemaSpy. Aplikasi SchemaSpy bisa mengidentifikasi skema database baik sebagian maupun keseluruhan tabel. Pengidentifikasian sebagian tabel bisa dilakukan dengan memasukan parameter ekspresi reguler. Pada SchemaSpy GUI, ekspresi reguler dimasukan dalam kolom Table name RegExp untuk kriteria nama tabel yang akan di cari dan kolom Table Exclusion RegExp untuk tabel yang tidak dimasukan dalam pencarian. Ekspresi Reguler adalah rumusan yang berbentuk bagus (well-formed formula) pada : Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
23
1. Operasi gabungan (union, dilambangkan dengan + )
2. Penyambungan (concatenation, dilambangkan dengan simbol yang bersebelahan)
3. Kleene closure (dilambangkan dengan * )
2.3.4 jSonde
jSonde adalah tool baru untuk profil, analisis dan reverse engineering Java. jSonde dapat digunakan untuk menghasilkan sequence diagram dari aplikasi java dengan profil tersebut
misalnya mendokumentasikan aplikasi nyata dari sebuah use case.
Fitur Utama pada jSonde adalah sebagai berikut.
1. Lampiran untuk proses Java yang berjalan tanpa restart 2. Menghasilkan sequence diagram 3. Metode profil panggilan 4. Penggunaan memori profil 5. Menampilkan dependensi file .jar
2.3.5 Postgre SQL Postgresql merupakan salah satu RDBMS (Relational Database Management System) yang handal, ditambah lagi lisensi dari postgreSQL bersifat open source, sehingga bisa digunakan dan diupgrade dengan mudah.PostgreSQL juga dapat digunakan di berbagai platform. PL / pgSQL adalah bahasa prosedural yang dapat dimuat untuk sistem database PostgreSQL. Tujuan desain dari PL / pgSQL adalah sebagai berikut. 1. dapat digunakan untuk membuat fungsi dan prosedur pemicu (Trigger), 2. menambah struktur kontrol dengan bahasa SQL, 3. dapat melakukan perhitungan yang kompleks, 4. mewarisi semua user-defined jenis, fungsi, dan operator, 5. mudah digunakan.
2.3.6 Enterprise Architect Enterprise Architect adalah kolaborasi modeling, desain, dan management platform berdasarkan pada UML dan relasi standar. Pada kegiatan Ormawa, enterprise architect
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
24
digunakan untuk membuat use case sistem dan use case aplikasi dari aplikasi pengelolaan
kegiatan Ormawa.
2.4 Tinjauan Perangkat Pemodelan
Model 2.4.1 Domain Domain model adalah sebuah gambaran visual dari kelas konseptual atau objek dunia nyata dalam bidang yang dibahas (Martin, Larman, 2004). 2.4.2 Aktor, Skenario, dan Use Case Aktor adalah sesuatu dengan perilaku seperti seorang manusia (diidentifikasikan dengan peran), sistem komputer, atau organisasi. Contoh dalam kegiatan Ormawa adalah pengelola
kegiatan, pengelola keuangan, dan pembantu direktorat III. Skenario adalah rangkaian spesifik dari tingkah laku suatu sistem yang menghasilkan sebuah hasil yang tampak dari nilai untuk seorang aktor utama. Use case adalah kumpulan dari skenario sukses dan gagal yang menggambarkan aktor dalam menggunakan suatu sistem untuk mencapai tujuan..
2.5 Tinjauan Metodologi Perancangan Sistem MDD (Model Driven Development) merupakan salah satu metodologi pengembangan perangkat lunak. MDD bertujuan meningkatkan proses pengembangan dan juga kualitas perangkat lunak. Dalam MDD, model merupakan artefak utama, tidak hanya untuk dokumentasi tapi juga untuk tujuan lain, seperti penalaran tentang domain atau solusi bisnis, analisis arsitektur, penghasilan kode dan hal lainnya yang berhubungan dengan siklus pengembangan perangkat lunak (Tran-Nguyen, 2009). Sebuah model adalah seperangkat unsur formal yang menggambarkan sesuatu (misalnya, sistem, bank, telepon atau kereta api) yang dibuat untuk tujuan yang terbuka untuk sebagian bentuk analisis seperti ide komunikasi antara manusia dan mesin, pengecekan kelengkapan dan kondisi lambat (Mello et al, Tran-Nguyen). Metode ini bisa meminimalisir tugas rutin programmer yang berhubungan dengan pembuatan bagian aplikasi yang sifatnya rutin, seperti proses pembuatan transaksi di database (CRUD, Create, Update, Delete) atau validasi pada field di kolom entri data. Daripada berfokus pada Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
25
bagaimana suatu kebutuhan di terapkan pada bahasa pemrograman, MDD lebih berfokus pada
fungsi dari perangkat lunak yang akan dibuat.
Model Driven Architecture (MDA) merupakan fondasi utama yang berisi kumpulan standar
yang berfokus pada metodologi MDD. Berikut beberapa prinsip MDA yang dikemukakan
oleh Object Management Group (OMG):
1. Model dinyatakan dalam notasi yang terdefinisi dengan baik dan merupakan rujukan
utama untuk memahami sistem. 2. Rancangan sistem bisa dikelola lewat sekumpulan model dengan menerapkan
serangkaian transformasi antar model, yang dikelola ke dalam sebuah framework
arsitektur transformasi. 3. Dasar formal untuk mendeskripsikan model dalam sekumpulan fasilitas metamodel sangat berguna untuk integrasi dan transformasi antar model dan merupakan dasar untuk melakukan proses otomasi lewat tool. OMG mengidentifikasi empat lapisan yang terdapat dalam MDA: Computation Independent Model (CIM), Platform Independent Model (PIM), Platform Specific Model (PSM) dijelaskan oleh Platform Model (PM), dan sebuah Implementation Specific Model (ISM). Lapisan ini diilustrasikan seperti Gambar 8 berikut.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
26
Gambar 8 Lapisan dalam MDA
Dalam konteks MDD, sebuah platform adalah “sekumpulan subsistem dan teknologi” yang menyediakan kapabilitas yang dibutuhkan untuk menunjang pengeksekusian perangkat lunak. Lapisan Platform (Atkinson dan Kühne dalam S. Baybeda) Definisi yang lebih rinci terdapat dalam buku panduan MDA, disana dijelaskan bahwa platform adalah sekumpulan subsistem dan teknologi yang menyediakan sekumpulan fungsi yang saling berkaitan lewat antarmuka dan dispesifikasikan memakai pola, dimana setiap aplikasi yang didukung oleh platform bisa memakainya tanpa mempedulikan detil tentang bagaimana fungsi yang disediakan oleh platform diterapkan. Pada tahap eksekusi sistem, platform digambarkan dalam sebuah hirarki seperti Gambar 9.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
27
Gambar 9 Struktur Hirarki pada Platform Sebuah perangkat lunak memiliki akses terhadap semua lapisan platform, pada hirarki di atas
lapisan atas bisa jadi menyembunyikan kebutuhan untuk melakukan akses ke lapisan di bawahnya.
ADempiere merupakan salah satu software yang dirancang dengan menggunakan arsitektur MDA dan bisa dikategorikan pada lapisan framework pada hirarki Tipikal lapisan platform. Sejak Kamus Aplikasi ADempiere mampu menangani kebutuhan melakukan pengubahan kode atau basis perangkat lunak secara minimal dan mengijinkan perubahan dilakukan secara cepat dan tepat untuk tidak hanya menangani model data tapi juga model bisnis, kita bisa menyebutnya sebuah framework aplikasi. (Oon, 2010) Metamodel Berdasarkan standar OMG, metamodel merupakan; 1. Sintaks abstrak. 2. Model data untuk menyimpan, memanipulasi dan mengganti model. 3. Metamodel memiliki sedikit isi semantik (memiliki sedikit makna). Hubungan antara Metamodel, Model dan sebuah sistem dapat dijelaskan lewat Gambar 10.
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
BAB II Tinjauan Pustaka
28
class Metamodel-mode...
Metamodel
Menyesuai kan terhadap
Model
di representarsikan ol eh
Sistem
Gambar 10 Hubungan Metamodel dan Sistem
Sistem di representasikan lewat sebuah model dan model menyesuaikan terhadap metamodel. Dalam kehidupa nyata, contoh metamodel digambarkan oleh diagram pengkelasan biologi seperti Gambar 11 berikut ini.
Gambar 11 Diagram Pengkelasan Biologi
Lapisan 00 menggambarkan satu model, 01 menggambarkan model, 02 menggambarkan metamodel
dan
selanjutnya
03
menggambarkan
pemodelan
tentang
(metametamodel).
Kustomisasi ERP-ADempiere (Studi Kasus: Aplikasi Pengelolaan Kegiatan Ormawa Polban)
metamodel