16 Davis NL, Willis CE
in the United States are administered by the
American Medical Association AMA and
the American Academy of Family Physicians
AAFP Credit sistems for allopathic
physicians 2004
17 Iljas A Perbankan Syariah
Pembiayaan bagi hasil 2004
18 Aniza R, Sharif M, Rahim A, Rahman
A Institusi Keuangan
Malaysia Pembiayaan Ijarah
2003
19 Habib A
Islamic Microfinance Institutions
Financing Microenterprises 2002
20 Rosly SA, Sanusi
M, Yasin N Perbankan Syariah
Pembiayaan Bai bitSaman Ajil` 2000
21 Okonjo K
Nigerian Rural womens credit sistems
1979
2.6 OOAD Object Oriented Analisys and Design
2.6.1 Definisi OOAD
Object Oriented Analysis adalah metode analisa yang memeriksa requirement syaratkeperluan yang harus dipenuhi suatu sistem dari sudut
pandang kelas-kelas dan objek-objek yang ditemui dalam ruang lingkup permasalahan. Sedangkan Object Oriented Design adalah metode untuk
mengarahkan arsitektur software yang didasarkan pada manipulasi objek-objek sistem atau subsistem Suhendar Gunadi, 2002.
Analysis dan design objects mendeskripsikan dengan jelas dua hal yang berbeda. Analysis objects mendeskripsikan gejala di luar sistem, seperti orang-
orang dan hal-hal, yaitu seuatu yang berdiri sendiri. Design objects mendeskripsikan gejala pada sistem yang dapat kita kontrol. Kita
mendeskripsikan perilaku mereka seperti pengoperasian komputer Mathiassen et al. 2000.
2.6.2 Konsep Dasar dalam OOAD
2.6.2.1 Objek
Objek baik yang konkret maupun konseptual selalu ada di sekeliling kita. Sebuah objek memiliki keadaan sesaat state dan perilaku behavior. State
sebuah objek tersebut yang dinyatakan dalam attributeproperties. Sedangkan perilaku suatu objek mendefinisikan bagaimana sebuah objek bertindakberaksi
dan memberikan reaksi. Perilaku sebuah objek dinyatakan dalam operation. Menurut Schmuller, attribute dan operation bila disatukan akan memberikan
fiturfeatures. Himpunan objek-objek yang sejenis disebut class. Objek adalah contohinstance dari sebuah class.
Aspek-Aspek yang berkaitan dengan objek antara lain Munawar, 2005: a. Abstraksi
Abstraksi bertujuan untuk memfilter properties dan operation pada suatu objek, sehingga hanya tinggal properties dan operation yang dibutuhkan saja.
Seringkali masalah yang berbeda membutuhkan sejumlah informasi yang berbeda pula pada areal yang sama.
b. Inheritance Seperti yang telah diuraikan, objek adalah contohinstance dari sebuah
class. Hal ini mempunyai konsekuensi yang penting yaitu sebagai instance sebuah class, sebuah objek mempunyai semua karakterisktik dari classnya. Inilah yang
disebut dengan inheritance pewarisan sifat. Dengan demikian apapun attribute dan operation dari class akan dimiliki pula oleh semua objek yang di
inheritditurunkan dari class tersebut. Sifat ini tidak hanya berlaku untuk objek terhadap class tetapi juga berlaku untuk class terhadap class lainnya.
c. Polimorphisme Polimorphisme adalah konsep yang sangat handal bagi pengembangan
perangkat lunak untuk pemisahan secara jelas di antara sub sistem yang berbeda. Dengan demikian sebuah sistem akan bisa dimodifikasi secara mudah karena
hanya dibutuhkan interface antar class. d. Encapsulation
Encapsulation sering
disebut dengan
penyembunyian informasi
information hiding. Konsep ini lebih didasari pada fakta yang ada di dunia nyata bahwa tidak semua hal perlu diperlihatkan.
e. Association Association assosiasi adalah hubungan antar objek yang saling
membutuhkan. Hubungan ini bisa satu arah ataupun lebih dari satu arah. f. Aggregation
Aggregation agregasi adalah bentuk khusus dan asosiasi yang menggambarkan seluruh bagian suatu objek merupakan bagian dari objek yang
lain.
2.6.3 Aktivitas Utama dalam OOAD
Aktifitas utama dalam OOAD ialah sebagai berikut Booch et al. 2007: 1. Inception
Pada tahapan awal ini ialah membangun dan memprioritaskan kebutuhan- kebutuhan sistem, membuat sebuah kesepakatan dengan user mengenai apa
yang akan dibangun, secara pasti dapat mengetahui kendala yang terjadi dan memastikan lingkup lingkungan pembangunan sistem yang akan dibangun.
2. Elaboration Pada tahapan ini akan dibangun rancangan sistem yang akan dibuat. Seluruh
kebutuhan user digambarkan melalui desain diagram. 3. Construction
Pada tahapan ini merupakan tahapan pembangunan atau pembuatan coding dan pengujian sistem.
4. Transition Pada tahapan ini sistem telah selesai dibuat akan siap diberikan kepada end
user. Pada tahapan ini juga akan digambarkan arsitektur perangkat-perangkat yang digunakan.
Aktifitas dalam OOAD digambarkan pada Gambar 2.3.
Gambar 2.3 Aktivitas OOAD Booch et al. 2007
Proses dalam OOAD terdapat dua, yaitu Booch et al. 2007: 1. Macro Prosess
Dalam proses makro meliputi beberapa tahapan dan akan digambarkan pada Gambar 2.4, yaitu:
a. Requirements Pada tahapan ini dijelaskan mengenai membuat dan menjaga hubungan
baik dengan pelanggan dan stakeholder atau pihak-pihak lain yang berkaitan dengan sistem yang akan dibuat. Serta mendefiniskan dan menjelaskan batasan
dari sistem yang akan dibuat. b. Analysis and design
Tahapan ini mentransformasikan kebutuhan ke dalam sebuah perancangan sistem yang menyediakan sebuah spesifikasi dari implementasi di
lingkungan yang dipilih untuk di implementasikan. Ini meliputi meningkatkan
satu arsitektur yang kokoh untuk sistem dan mendirikan mekanisme umum yang harus dipergunakan oleh elemen yang berbeda dari sistem.
c. Implementation Pada tahapan ini dilakukan penerapan, tes unit, integrasi desain,
menghasilkan sistem executable. d. Test
Pada tahapan test dilakukan uji implementasi untuk memastikan bahwa sistem yang dibuat telah memenuhi kebutuhan yaitu kebutuhan telah
diterapkan sewajarnya. e. Deployment
Di tahapan ini dipastikan bahwa produk perangkat lunak meliputi uji implementasi telah tersedia untuk end user.
Disiplin berikut dilaksanakan sepanjang lifecycle: a.
Project Management Mengatur projek pembangunan software, meliputi planning perencanaan,
staffing susunan kepegawaian dan monitoring the project memonitor proyek, seperti halnya mengatur risiko.
b. Configuration and Change Management
Identifikasi konfigurasi data, mengontrol perubahan data-data dan mengatur konfigurasi dari data.
c. Enviroment
Menyediakan lingkungan pengembangan software, termasuk atara kedua proses dan alat untuk mendukung team pengembang.
Gambar 2. 4 Proses Makro Booch et al. 2007
2. Micro Prosess Pada proses mikro ini, meliputi proses analysis and design proses mikro
dengan melihat aktivitas apa yang dilaksanakan dan mengerjakan produk apa yang dihasilkan. Proses mikro merupakan bagian dari proses makro seperti yang
terdapat pada Gambar 2.5.
Gambar 2.5 Proses Mikro Booch et al. 2007
Pada analisis terfokus pasa behavior perilaku bukan form bentuk. Dalam analisis mencari model dunia dengan mengidentifikasi unsur-unsur yang
membentuk kosakata yang berasal dari problem domain dan mendeskripsikan roles, responsibilities, and collaborations. Sedangkan pada desain diciptakan
unsur-unsur yang menyediakan behavior dari unsur analisis yang diperlukan.
Produk utama dari proses mikro adalah: 1. The architecture description, menjelaskan arsitektur sistem, termasuk
deskripsi mekanisme
umum. Uraian
tersebut meliputi
arsitektural aspek penting dari analisisdesain model.
2. The analysisdesign model, mencakup analisis dan elemen desain solusi perangkat lunak dan organisasi mereka, serta realisasi yang
menjelaskan bagaimana kebutuhan perilaku sistem yang diwujudkan dalam hal elemen-elemen.
Di dalam proses mikro terdiri dari 4 aktifitas seperti yang tergambar pada Gambar 2.6. Aktivitas yang terdapat pada proses mikro ialah:
1. Identify the elements Menemukan elemen-elemen yang akan dikerjakan.
2. Define the collaborations between the elements Mendeskripsikan bagaimana mengidentifikasi kerjasama antara elemen untuk
menyediakan kebutuhan tingkah laku sistem.
3. Define the relationships between the element Mendefinisikan hubungan antar elemen untuk mendukung kerjasama antar
elemen. 4. Define the semantics of the elements
Membangun behavior dan attributes dari pengidentifikasian elemen. Menyiapkan elemen untuk level abstraksi selanjutnya.
Gambar 2.6 Aktifitas Proses Mikro Booch et al. 2007
2.7 UML Unified Modeling Language
2.7.1 Definisi UML
Unified Modeling Language UML adalah sebuah bahasa untuk menentukan, visualisasi, konstruksi dan mendokumentasikan artifacts dari sistem
software, untuk memodelkan bisnis dan sistem nonsoftware lainnya Suhendar Gunadi, 2002. Artifact itu sendiri adalah sepotong informasi yang digunakan atau
dihasilkan dalam suatu proses rekayasa software. Artifact dapat berupa model, deskripsi, atau software.