Unified Modelling Language UML

pengguna, analisis perilaku, pengembangan dan perbaikan algoritma ataupun teknik rekomendasi itu sendiri. Teknologi rekomendasi ini didasarkan pada asumsi implisit bahwa kebutuhan pengguna dan preferensi mereka dapat dimodelkan dalam pemilihan produk tertentu dengan menerapkan algoritma atau teknik perekomendasian yang tepat dan pengetahuan knowledge yang diberikan ke sistem Ricci, et al. 2011. Menurut Burke, 2000, mengelompokkan tiga tipe pendekatan dalam sistem rekomendasi: a collaborative filtering atau social-filtering, b content-based, c knowledge-based.

2.5. Personalized Recommendation Engine

Personalized recommendation engine merupakan teknik merekomendasikan sesuatu, bisa produk, artikel, atau apa saja kepada pengguna dengan memperhatikan perilaku atau aktivitas pengguna terhadap satu sistem yang mereka gunakan. Sistem mencatat interaction history setiap pengguna di sistem dan mempelajari preferensi tersebut terhadap produk, artikel, atau apa saja yang ingin dicari. Dalam hal minimnya preferensi pengguna terhadap sistem yang digunakan, sistem dapat langsung memberikan rekomendasi dengan mencari kesamaan dari preferensi pengguna lain yang mirip dengan satu pengguna tersebut.

2.6. Unified Modelling Language UML

Unified Modelling Language UML merupakan notasi atau diagram yang digunakan untuk menjelaskan, memvisualisasikan, dan memodelkan dokumentasi sistem perangkat lunak. UML bukan metode pengembangan Nugroho, 2010. Yang berarti UML tidak akan menjelaskan apa yang harus dilakukan pertama kali atau apa yang akan dilakukan selanjutnya atau bagaimana mendesain satu sistem, tetapi UML berguna untuk membantu memvisualisasikan desain dan komunikasi yang ada di perangkat lunak. UML lebih cocok untuk desain perangkat lunak berorientasi objek Fowler, 2003. UML terdiri dari banyak elemen model yang merepresentasikan bagian yang berbeda dari satu sistem perangkat lunak. Elemen-elemen UML ini berguna untuk Universitas Sumatera Utara menciptakan diagram yang merepresentasikan bagian tertentu, atau gambaran umum sistem yang akan dikembangkan. Secara garis besar UML terbagi dalam dua tipe diagram, yaitu: i Diagram Struktur Diagram struktur ini menangani visualisasi, spesifikasi, dan dokumentasi aspek statik dari satu sistem. Diagram struktur terdiri dari: a. Diagram kelas class diagram b. Diagram objek object diagram c. Diagram pengembangan deployment diagram d. Diagram komponen component diagram ii Diagram Perilaku Diagram perilaku ini menangani visualisasi, spesifikasi, dan dokumentasi aspek dinamis dari satu sistem. Diagram perilaku ini terdiri dari: a. Diagram use case use case diagram b. Diagram sekuens sequence diagram c. Diagram kolaborasi collaboration diagram d. Diagram state state diagram e. Diagram aktifitas activity diagram f. Diagram relasi entitas entity relationship diagram 2.6.1. Diagram use case Diagram use case mendeskripsikan relasi dan kebutuhan antara kumpulan use case dan actor yang berkaitan di dalam proses. Elemen-elemen yang ada pada use case diagram: 1 Use Case Use case juga merupakan deskripsi dari interaksi antara pengguna sistem dan sistem itu sendiri. Use case merepresentasikan antarmuka eksternal sistem dan menentukan bentuk kebutuhan apa yang sistem harus lakukan. Ada beberapa poin yang harus diperhatikan ketika membuat use case: 2 Setiap use case berhubungan dengan paling tidak satu aktor Universitas Sumatera Utara 3 Setiap use case memiliki inisiator contohnya, satu aktor 4 Setiap use case mengarah pada hasil yang relevan business value Gambar 2.8 Use Case 2. Aktor Aktor merupakan entitas eksternal di luar sistem yang berinteraksi dengan, yaitu siapa atau apa yang menggunakan sistem dengan melibatkan use case. Aktor bisa manusia ataupun sistem terotomatisasi. Aktor disini merepresentasikan peran roles dan bukan pemakai individu dari sistem. Aktor harus memiliki nama yang menyatakan peran. Misal pada gambar 2.x berikut. Gambar 2.9 Contoh Aktor Pada Use Case Diagram 3. Keterhubungan Relationship Relasi antar use case yang satu dengan yang lain berupa generalisasi use case yaitu: a. Include, perilaku use case merupakan bagian dari use case lain b. Extend, perilaku use case memperluas use case yang lain Gambar 2.10 Keterhubungan Universitas Sumatera Utara 2.6.2. Spesifikasi use case Spesifikasi use case merepresentasikan gambaran lengkap mengenai use case itu sendiri. Spesifikasi perekomendasian soal-soal di platform UVa online judge dilakukan berdasarkan caseyang ada pada use case diagram. Spesifikas use case terdiri dari: a. Tujuan use case, memaparkan tujuan case yang terjadi b. Deskripsi, memaparkan apa yang terjadi pada case c. Skenario, memaparkan cara kerja case mulai dari awal hingga akhir pada proses d. Kondisi awal, keadaan yang terjadi sebelum case berlangsung e. Kondisi akhir, keadaan atau hasil akhir setelah case berlangsung 2.6.3. Sequence diagram Diagram Sekuens menggambarkan pertukaran pesan atau interaksi yang terjadi antar objek di dalam dan di sekitar sistem pengguna, tampilan, dan lainnya. Contohnya, pemanggilan fungsi antar objek pada situasi rentang waktu tententu secara spesifik. Berikut elemen-elemen yang terdapat dalam diagram sekuens. Tabel 2.3 Elemen-elemen diagram sekuens No Gambar Nama Penjelasan 1 Aktivasi Menggambarkan aktivitas objek 2 Aktor Menggambarkan aktor suatu objek 3 Boundary Berhubungan dengan proses input output ataupun interface Universitas Sumatera Utara 4 Controller Berhubungan dengan proses 5 Entity Berhubungan dengan input output data 6 Message Arrow Menggambarkan alur proses, perintah atau pengiriman data 7 Object Lifeline Membuat batasan objek 2.6.4. Activity diagram Diagram aktivitas menggambarkan alur aktivitas dalam satu sistem. Diagram aktivitas merupakan bentuk khusus dari state diagram. Berikut elemen-elemen diagram aktivitas. Tabel 2.4 Elemen-elemen Pada Diagram Aktivitas Simbol Keterangan Starting point Ending point Joining Forking Universitas Sumatera Utara Grouping

2.7. Penelitian Terdahulu