Menurut Satzinger et al (2005, p60), pendekatan object oriented merupakan sebuah pendekatan pengembangan sistem yang melihat sistem informasi sebagai sekumpulan dari object-object yang saling berinteraksi yang bekerja bersama untuk menyelesaikan suatu tugas.
Menurut Bennett et al. (2010, p90), object-orientation adalah pendekatan untuk pengembangan sistem yang membantu menghindari berbagai masalah dan perangkap. Di dalam program object-oriented, data di-enkapsulasi dengan fungsi-fungsi yang bertindak di atasnya.
Berdasarkan pengertian di atas, dapat disimpulkan bahwa pendekatan object-oriented adalah pendekatan pengembangan sistem dengan melihat sistem
informasi sebagai sekumpulan object yang saling berinteraksi dan membantu dalam menghindari berbagai masalah dan perangkap.
2.9.1. Object-Oriented Analysis (OOA) dan Object-Oriented Design (OOD) Karena pendekatan object oriented melihat suatu sistem sebagai kumpulan dari object-object yang saling berinteraksi, maka Object-Oriented Analysis mendefinisikan semua tipe-tipe dari object yang
dibutuhkan user untuk bekerja dan menunjukan interaksi user yang dibutuhkan untuk menyelesaikan tugas-tugas. Sedangkan Object-Oriented Design mendefinisikan semua tipe-tipe tambahan dari object-object penting untuk berkomunikasi dengan orang dan alat-alat dalam sistem, menunjukan object-object berinteraksi untuk menyelesaikan tugas-tugas, dan menyempurnakan definisi dari setiap tipe object sehingga dapat diimplementasikan dengan bahasa atau lingkungan tertentu. (Satzinger et al (2005, p60))
2.9.2. Unified Modelling Language (UML)
Menurut Bennett et al. (2010, pp118-119), UML diagram merupakan grafik yang terdiri dari berbagai jenis bentuk yang dikenal dengan node, dihubungkan dengan garis yang dikenal sebagai path.
Menurut Satzinger et al. (2005, p48), Unified Modelling Language (UML) menurut adalah serangkaian standar konstruksi model
dan notasi yang dikembangkan secara khusus untuk pengembangan object-oriented.
Jadi dapat disimpulkan bahwa UML merupakan grafik berupa serangkaian standar konstruksi model dan notasi yang dikembangkan secara khusus untuk pengembangan object-oriented.
2.9.3. Activity Diagram
Satzinger et al. (2009, p141) menjelaskan sebuah activity diagram sebagai workflow diagram sederhana yang menjelaskan berbagai aktivitas-aktivitas user (atau sistem), orang yang melakukan setiap kegiatan dan urutan aliran dari kegiatan mereka. Menurut Bennett et al. (2010, p113), dalam Unified Process, activity diagram digunakan untuk menggambarkan proses pengembangan. Activity diagram sangat berguna untuk menggambarkan urutan dari proses-proses bisnis dalam sebuah organisasi.
Bennett et al. (2010, p123) mengatakan activity diagram digunakan untuk berbagai tujuan, yaitu:
a. Untuk menggambarkan proses atau tugas (misalnya dalam pemodelan bisnis).
b. Untuk mendeskripsikan fungsi sistem yang digambarkan oleh sebuah use case.
c. Untuk menjelaskan logika dari sebuah operasi di dalam spesifikasi-spesifikasi operasi.
d. Dalam USDP (Unified Software Development Process), activity diagram digunakan untuk menggambarkan kegiatan yang membentuk
sebuah siklus hidup.
Gambar 2.2 menunjukan notasi-notasi dasar yang digunakan untuk menggambarkan activity diagram.
Gambar 2.2 Notasi Activity Diagram Sumber : Satzinger et al. (2009, p142)
2.9.4. Use case Diagram
Menurut Bennett et al. (2010, p154), use case adalah penjelasan fungsionalitas sistem dari sudut pandang user. Untuk menunjukkan fungsionalitas bila sistem akan menyediakan dan menggambarkan user mana yang berkomunikasi dengan sistem dalam cara menunjukkan fungsionalitas tersebut digunakan use case diagram.
Menurut Satzinger et al. (2009, p242) use case diagram adalah diagram yang dugunakan untuk menunjukan berbagai peran user dan
bagaimana peran-peran tersebut menggunakan sistem. Sedangkan usecase merupakan aktivitas yang diselesaikan oleh sistem.
Dua jenis hubungan yang dapat ditunjukkan dari use case diagram, yaitu extend dan include. Extend digunakan ketika ingin menunjukkan bila suatu use case menyediakan fungsionalitas tambahan yang diperlukan oleh use case lain (Bennett et al., 2010, p148). Include digunakan saat terdapat urutan perilaku yang sering digunakan pada sejumlah use case, dimana satu use case meliputi aksi yang dijelaskan di use case lain (Bennett et al., 2010, p149).
Gambar 2.3 Notasi dari use case diagram Sumber : Bennett et al.(2010, p156)
Gambar 2.4 Use case diagram menunjukkan <<extend>> Sumber : Bennett et al.(2010, p156)
Gambar 2.5 Use case diagram menunjukkan <<include>> Sumber : Bennett et al.(2010, p158)
2.9.5. Class Diagram
Bennett et al. (2010, p134), setiap use case analysis diuraikan secara terpisah untuk memasukkan detil rancangan yang relevan. Model-model yang terpisah ini lalu diintegrasikan untuk menghasilkan rancangan class diagram yang detil. Rancangan class memiliki atribut dan operasi spesifik untuk menggantikan tanggung jawab yang tidak terlalu spesifik yang telah diidentifikasikan dalam aktifitas analisis.
Bennett et al. (2010, p396), salah satu tugas pada rancangan yang detil adalah menambahkan secara lebih detil ke dalam spesifikasi atribut dan operasi pada class yang sudah diidentifikasikan pada analisis. Hal ini termasuk:
1. Menentukan tipe data pada tiap atribut.
2. Menentukan bagaimana meng-handle atribut yang diturunkan. 3. Menambah operasi utama (primary operations).
4. Mendefinisikan tanda-tanda operasi termasuk tipe parameter. 5. Menentukan visibilitas dari atribut dan operasi
Tabel 2.1 Visibilitas
Sumber: Bennett et al. (2010, p 402)
Menurut Bennett et al. (2010, p420), rancangan class berfokus dengan rancangan detil dari sistem dan dipimpin dalam kerangka kerja arsitektur dan spesifikasi guideline rancangan. Proses detil rancangan melibatkan penentuan tipe data dari atribut, penentuan bagaimana mengimplementasikan atribut yang telah diturunkan, menambah primary operation, dan menjelaskan operation signature. Asosiasi perlu
dirancang untuk mendukung pesan melewati persyaratan operasi. Ini termasuk menentukan seberapa baik untuk menempatkan object reference dalam class.
Gambar 2.6 Notasi dari class diagram Sumber : Bennett et al.(2010, p185)
2.9.6. Sequence Diagram
Sequence diagram adalah diagram yang menunjukkan interaksi
antar obyek yang diatur dalam sebuah urutan waktu. Aplikasi sequence diagram yang paling umum adalah mewakili interaksi obyek yang terinci
dari satu use case untuk satu operasi (Bennett et al. (2010, p262)).
Menurut Satzinger (2009, p242), System Sequence Diagram merupakan sebuah diagram menunjukkan urutan dari messages antara ekternal actor dan sistem dalam usecase atau scenario. Dalam sequence
diagram, aliran informasi masuk dan keluar dari sistem disebut sebagai message. Terdapat beberapa notasi yang digunakan untuk penggambaran
System Sequence Diagram seperti yang ditunjukkan dalam Gambar 2.6.
a) Actor : merupakan orang (atau peran) yang berinteraksi dengan sistem. Dalam usecase diagram, actor “menggunakan” sistem, namun penekanan dalam system sequence diagram adalah bagaimana actor “berinteraksi” dengan sistem dengam memasukkan input data dan menerima output data.
b) Object : menunjukkan keseluruhan sistem terotomasi.
c) Lifeline atau object lifeline : merupakan garis vertikal dibawah sebuah object dalam sequence diagram untuk menunjukkan garis kehidupan
Gambar 2.7 Notasi dari sequence diagram Sumber : Bennett et al. (2010, p638)
Menurut Bennett et al. (2010, p262), dalam sequence diagram terdapat satu buah notasi yang disebut fragment. Fragment yang digunakan pada sequence diagram dimaksudkan untuk memperjelas bagaimana sequence ini saling dikomunikasikan. Tipe interaksi operator yang dapat digunakan dalam fragment dapat dilihat pada tabel berikut.
Tabel 2.2 Tipe Interaksi Operation Interaction
Operator
Penjelasan dan Kegunaaan
alt Alternatives mewakili alternatif behaviour, setiap behaviour ditampilkan dalam operasi yang terpisah. opt Option merupakan pilihan tunggal atas operasi yang hanya
akan dieksekusi apabila batasan interaksi bernilai true. break Break mengindikasi bahwa dalam combined fragment
ditampilkan sementara oleh sisa dari interaction fragment yang terlampir.
par Paralel mengindikasi bahwa eksekusi operasi dalam combined fragment dapat digabungkan dalam sequence manapun.
seq Weak Sequencing menghasilkan urutan dari tiap operasi yang telah di-maintain tetapi terjadinya suatu event
berbeda operasinya dalam perbedaaan lifeline yang dapat terjadi dalam urutan apapun.
strict Strict Sequencing membuat sebuah strict sequence berada dalam eksekusi sebuah operasi tetapi tidak termasuk urutan dalam operasi.
neg Negative menggambarkan sebuah operasi yang bersifat invalid.
critical Critical Region mengadakan sebuah batasan dalam sebuah operasi yang tidak memiliki event yang terjadi dalam lifeline.
ignore Ignore menandakan tipe pesan, spesifikasi sebagai parameter, yang seharusnya diabaikan dalam sebuah interaksi.
consider Consider merupakan keadaan dimana pesan-pesan seharusnya dipertimbangkan dalam sebuah interaksi. assert Assertion merupakan keadaan bahwa sebuah sequence
dari pesanan dalam operasi hanya satu-satunya yang memiliki lanjutan yang bersifat sah.
loop Loop digunakan untuk mengindikasi sebuah operasi yang diulang berkali-kali sampai batasan interaksi untuk perulangan berakhir.
Sumber: Bennett et al. (2010, p279)
2.9.7. User-interface
Bennett et al. (2010, p) mengemukakan interface adalah apa yang dilihat oleh user sebagai sistem. User interface merupakan cara berinteraksi user dengan suatu sistem informasi.
2.9.8. Navigation Diagram
Menurut Mathiassen et al. (2000, p344), diagram navigasi adalah statechart diagram khusus yang berfokus pada keseluruhan user interface yang dinamis. Diagram ini menunjukkan window yang berkaitan dan transisi di antara window-window tersebut. Notasi untuk Navigation Diagram ditunjukkan pada Gambar 2.6.
Gambar 2.8 Notasi Design Navigation Diagram Sumber : Mathiassen et al. (2000, p343)