RANCANG BANGUN APLIKASI DREAMSHARE- PEMBUAT PETA PIKIRAN BERBASIS PEMBELAJARAN KOLABORASI Yohanda Mandala, Umi Laili Yuhana, S.Kom, M.Sc., Diana Purwitasari, S.Kom., M.Sc. Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS), Surabaya, 60111, Indonesia Email:
[email protected];
[email protected];
[email protected] ABSTRAK Salah satu media pembelajaran yang dianggap efektif saat ini adalah melalui peta pikiran (mind map). Peta pikiran adalah representasi visual dari pikiran suatu individu. Peta pikiran adalah cara termudah untuk menempatkan informasi ke dalam otak dan mengambil informasi ke luar otak. Selain hal tersebut, media pembelajaran yang ada saat ini juga diarahkan pada penerapan konsep pembelajaran kolaborasi (collaborative learning). Pembelajaran kolaborasi merupakan metode pembelajaran dalam kelompok-kelompok yang dalam setiap individu anggota kelompok akan membagi informasi, pengalaman, ide, pendapat, kemampuan, dan keterampilan mereka untuk bisa meningkatkan pemahaman dari keseluruhan anggota. Melihat dari permasalahan itu, muncul gagasan untuk membuat media belajar dengan nama Dreamshare, berupa pembuat peta pikiran yang menerapkan konsep pembelajaran kolaborasi. Konsep pembelajaran kolaborasi yang akan diwujudkan oleh aplikasi Dreamshare adalah dengan cara adanya fitur untuk bisa berkolaborasi dalam waktu nyata untuk menyampaikan ide dan gagasannya melalui proses pembuatan peta pikiran. Aplikasi ini juga akan memiliki beberapa fitur yang bisa membantu pengguna untuk melaksanakan pembelajaran kolaborasi. Fitur-fitur tersebut adalah pembangkitan peta pikiran dari dokumen, ekspor peta pikiran menjadi dokumen dan juga penyaranan materi otomatis dari Bing Search. Kata kunci: Peta Pikiran, Pembelajaran Kolaborasi, TF-IDF, Bing Search. saling melengkapi dan menyempurnakan. Melihat dari permasalahan itu, muncul gagasan untuk membuat media belajar dengan nama Dreamshare, berupa aplikasi pembuat peta pikiran yang menerapkan konsep pembelajaran kolaborasi, sehingga selain bisa menjadi media belajar yang lebih menarik efektif dan efisien, aplikasi ini juga bisa meningkatkan kemampuan orang dengan cara saling berinteraksi dan berbagi informasi. Untuk bisa mewujudkan konsep pembelajaran kolaborasi dari aplikasi Dreamshare, maka dibutuhkan sistem yang bisa saling terhubung satu sama lain dalam waktu yang bersamaan. Untuk mengatasi semua itu dibutuhkan rancangan sistem yang berupa klien– server. Dari hal inilah maka dibutuhkan rancang bangun aplikasi Dreamshare yang bisa menjadi pembuat peta pikiran dan juga menjadi klien dari media pembelajaran yang berkonsep pembelajaran kolaborasi ini.
1. PENDAHULUAN Perkembangan teknologi informasi saat ini terus membuka berbagai alternatif baru dalam menunjang media pembelajaran yang lebih efektif dan efisien. Salah satu media pembelajaran yang dianggap efektif saat ini adalah melalui peta pikiran (Mind Map). Peta pikiran adalah metode mempelajari konsep yang ditemukan oleh Tony Buzan. Konsep ini didasarkan pada cara kerja otak kita dalam menyimpan informasi. Hasil penelitian menunjukkan bahwa otak kita tidak menyimpan informasi dalam kotak-kotak sel saraf yang tersusun rapi melainkan dikumpulkan pada sel-sel saraf yang berbercabang-cabang yang apabila dilihat sekilas akan tampak seperti cabang-cabang pohon. Dari fakta tersebut maka disimpulkan apabila kita juga menyimpan informasi seperti cara kerja otak, maka akan semakin baik informasi tersimpan dalam otak dan hasil akhirnya tentu saja akan mempermudah proses belajar. Media pembelajaran yang ada saat ini juga diarahkan pada penerapan konsep pemebelajaran kolaborasi. (Collaborative Learning). pembelajaran kolaborasi merupakan metode pembelajaran dalam kelompok-kelompok yang dalam setiap individu anggota kelompok akan membagi informasi, pengalaman, ide, pendapat, kemampuan, dan keterampilan mereka untuk bisa meningkatkan pemahaman dari keseluruhan anggota. Secara lebih spesifik, pembelajaran kolaborasi didasarkan pada suatu model dimana pengetahuan dan informasi dapat diciptakan dalam suatu komunitas dimana setiap anggota aktif berinteraksi, berbagi, sehingga bisa menyebar dari pusat mewakili pikiran-pikiran utama
2. TINJAUAN PUSTAKA 2.1 Konsep Peta Pikiran [1] Peta pikiran adalah cara termudah untuk menempatkan informasi ke dalam otak dan mengambil informasi ke luar otak. Secara harfiah peta pikiran adalah suatu cara mencatat yang kreatif, efektif dalam memetakan buah pikiran atau ide. Dalam pengertiannya, peta pikiran juga sering dibandingkan dengan peta kota. Pusat sebuah peta pikiran mirip dengan pusat kota. Pusat peta pikiran mewakili ide terpenting. Jalan jalan utama yang bernama iMindMap, penulis buku dan juga puisi yang
1
dalam ide yang disampaikan, jalan jalan sekunder mewakili pikiran pikiran sekunder dan seterusnya. Gambar-gambar atau bentuk-bentuk khusus dapat mewakili area-area yang menarik atau ide-ide menarik tertentu. Hampir semua peta pikiran memiliki kesamaan. Semuanya menggunakan warna. Semuanya memiliki struktur alami yang memancar dari pusat. Hampir semua menggunakan garis lengkung, simbol, kata dan gambar yang sesuai. Satu rangakaian aturan yang sederhana, mendasar, alami dan sesuai dengan cara kerja otak. Dengan peta pikiran, daftar informasi yang panjang bisa dialihkan menjadi ragam warna warni, sangat teratur dan mudah diingat yang bekerja selaras dengan cara kerja alami otak dalam melakukan berbagai hal. Pada dasarnya peta pikiran adalah sebuah Acyclic Tree atau Graph yang memiliki sebuah simpul utama. Simpul simpul lainnya akan terhubung dengan simpul utama tersebut, baik secara langsung ataupun harus melalui simpul simpul lain terlebih dahulu. Tony Buzzan sang pencetus peta pikiran sendiri tidak membuat suatu batasan atau aturan baku yang harus dipatuhi ketika membuat sebuah peta pikiran, akan tetapi dia memberikan beberapa rambu rambu pembuatan peta pikiran untuk memudahkan dalam menyerap informasi informasi yang terkandung didalamnya. Rambu rambu yang disarankan oleh Tony Buzzan dalam membuat peta pikiran adalah sebagai berikut ini. 1. Memulai dari sebuah Simpul utama yang berada ditengah ruang kerja. 2. Menggunakan gambar pada simpul utama. 3. Menggunakan warna yang beragam pada peta pikiran yang dibuat. 4. Menghubungkan simpul-simpul yang ada berdasarkan relasi asosiasi. 5. Membuat garis penghubung antar simpul yang melengkung dan bukan berupa garis lurus.
telah diterbitkan di 150 negara dan diterjemahkan ke 30 bahasa lebih, pendidik untuk segala usia, juga olahragawan dan telah mendapat beberapa penghargaan lainnya.
2.2 Pembelajaran Berbasis Kolaborasi dan Computer Supported Collaborative Learning (CSSL) [2] Pembelajaran kolaborasi adalah suatu pendekatan sistem edukasi untuk belajar dan mengajar yang melibatkan kelompok siswa bekerja sama untuk memecahkan masalah, menyelesaikan tugas, atau membuat produk. Pembelajaran kolaboratif didasarkan pada gagasan bahwa belajar adalah suatu tindakan alami sosial di mana para peserta saling berdiskusi untuk bisa melengkapi informasi satu sama lain. Sedangkan CSCL adalah sebuah cabang yang muncul dari ilmu pendidikan yang terfokus untuk mempelajari bagaimana orang orang bisa belajar bersama yang terjadi melalui interaksi sosial dengan bantuan komputer menggunakan jaringan internet. Ini jenis pembelajaran ditandai dengan berbagi dan saling melengkapi pengetahuan serta informasi antara peserta menggunakan teknologi sebagai sarana utama komunikasi atau sebagai sumber daya umum. CSCL dapat diimplementasikan dalam lingkungan pembelajaran online. Didalam konteks CSCL, interaksi yang terjadi didalam suatu group diperantarai oleh sebuah lingkungan yang disediakan komputer. CSCL adalah suatu cara dimana sebuah aktivitas diskusi dalam suatu kelompok diperentarai dengan jalan merancang suatu artifak tertentu yang dikerjakan secara bersama sama.
2.3 Pemrosesan Teks Untuk Pembangkitan Peta Pikiran Pemrosesan teks disini digunakan untuk membangkitkan peta pikiran dari dokumen Microsoft Word. Proses yang dilakukan adalah dengan metode pembobotan TF-IDF dan penghitungan koefisien Jaccard. 2.3.1 Metode Pembobotan TF-IDF [3] Metode pembobotan TF-IDF adalah metode yang paling umum digunakan untuk mendeskripsikan dokumen dalam Vector Space Model, terutama dalam bidang sistem temu kembali informasi. Bobot tersebut merupakan perhitungan statistik untuk mengevaluasi bagaimana pentingnya sebuah kata terhadap sebuat dokumen atau koleksi. Tingkat kepentingan bertambah secara proporsional terhadap jumlah kemunculan sebuah kata dalam sebuah dokumen namun diimbangi dengan frekuensi kemunculannya dalam koleksi dokumen. TF-IDF adalah metode pembobotan yang menggabungkan konsep frekuensi intradokumen dan interdokumen yang dinyatakan seperti Rumus 2.1 berikut:
Gambar 1 - Peta Pikiran Profil Tony Buzan
Peta pikiran pada Gambar 1 adalah peta pikira yang menjelaskan profil Tony Buzan. Dalam peta pikiran tersebut, dapat diketahui bahwa Toni Buzan adalah pembuat perangkat lunak pembuat peta pikiran yang
2
N wij tfij . log2 df j
,
(2.1)
wij adalah bobot term j pada dokumen i, tfij adalah frekuensi term j pada dokumen i, N adalah jumlah total dokumen yang diproses dan dfj adalah jumlah dokumen yang memiliki term j didalamnya. Selain terbukti mampu meningkatkan nilai presisi, metode pembobotan TF-IDF relatif mudah diimplementasikan.
2.3.2 Koefisien Jaccard [3]
Koefisien Jaccard adalah salah satu metoda yang dipakai untuk menghitung kemiripan antara dua objek. Seperti halnya Cosine Distance dan Matching Coefficient, secara umum perhitungan metode ini didasarkan pada vector space kemiripan measure. Koefisien Jaccard dapat dengan lebih mudah dideskripsikan sebagai Rumus 2.4 berikut ini. ( ) (2.4)
pada kode aplikasi, bersifat assembly pada saat proses deployment/kompilasi, melakukan versioning sebuah komponen yang bisa di daur ulang, memungkinkan penggunaan kembali kode, dengan adanya sifat inheritance, melakukan pengaturan/ manajemen tentang lifetime sebuah objek, melakukan analisis objek-objek secara otomatis dan melakukan uji coba terhadap aplikasi secara otomatis.
2.4.2 Windows Presentation Foundation (WPF) [5] Windows Presentation Foundation (WPF) adalah sebuah sistem antarmuka terbaru yang dikeluarkan oleh Microsoft untuk membuat aplikasiaplikasi klien Windows dengan interaksi pengguna yang mengagumkan secara visual. WPF juga dapat membuat aplikasi mandiri maupun yang dijalankan oleh browser. Berbeda dengan Windows Forms, WPF memanfaatkan dan mengeksploitasi DirectX 9.0, tetapi dikemas menjadi API yang terstruktur yang secara pemakaian sama dengan pemakaian kelas pada Windows Forms. Dalam pembuatan aplikasi WPF bahasa yang digunakan adalah XAML. XAML (Extensible Application Markup Language) adalah sebuah bahasa berbasis XML deklaratif yang diciptakan oleh Microsoft yang digunakan untuk menginisialisasi nilai dan objek terstruktur. XAML tersedia di bawah Open Specification Promise Microsoft. Akronim ini pada mulanya merupakan singkatan dari Extensible Avalon Markup Language. Avalonmerupaka nama kode untuk WPF. Elemen XAML memetakan langsung ke objek instan CLR, sementara atribut XAML memetakan ke properti dan event CLR di atas objek-objek tersebut.
√
A: adalah term atau kata pertama dari calon frase; B: adalah term atau kata kedua dari calon frase; |A ∩ B|: adalah jumlah dokumen yang mengandung term A dan term B; |A U B|: adalah jumlah dokumen yang mengandung term A, atau term B, atau term A dan term B .
2.4 Teknologi Pengembangan Aplikasi 2.4.1 Kerangka Kerja Microsoft .NET 4.0 [4] Kerangka kerja Microsoft .NET 4.0 merupakan sebuah platform perangkat lunak yang berjalan utamanya pada sistem operasi Microsoft Windows, saat ini kerangka kerja .NET umumnya telah terintegrasi dalam distribusi standar Windows mulai dari Windows Server 2003 dan versi-versi Windows yang lebih baru. Platform ini menyediakan sejumlah besar pustaka pemrograman komputer dan mendukung beberapa bahasa pemrograman serta interoperabilitas yang baik sehingga memungkinkan bahasa-bahasa tersebut berfungsi satu dengan lain dalam pengembangan sistem. Berbeda halnya dengan tipikal aplikasi konvensional umumnya, program yang ditulis dengan memanfaatkan kerangka kerja .NET berjalan pada lingkungan perangkat lunak melalui Common Language Runtime (CLR), dan bukan perangkat keras secara langsung. Hal ini memungkinkan aplikasi yang dibuat diatas .NET secara teoritis dapat berjalan pada perangkat keras apapun yang didukung oleh kerangka kerja .NET. Beberapa kelebihan .NET Framwork yang menjadi pertimbangan penulis untuk menggunakannya sebagai platform utama dalam membangun aplikasi Dreamshare adalah sebagai berikut: dapat lebih menyederhakan proses pengembangan aplikasi, memungkinkan adanya variasi dan integrasi dari berbagai bahasa pemrograman yang ada di lingkunan Framework .NET, keamanan dengan melakukan identifikasi
2.4.3 Windows Communication Foundation (WCF) [6] WCF (Windows Communication Foundation) merupakan salah satu teknologi baru dari Microsoft yang memungkinkan aplikasi dalam lingkungan terdistribusi berkomuniksi satu sama lain. WCF adalah model pemrograman lengkap untuk membangun aplikasi berorientasi layanan. Teknologi ini memungkinkan pengembang untuk membangun solusi aman, handal, dan mendukung transaksi, yang dapat terintegrasi lintas platform serta mampu beroperasi dengan investasi yang ada. WCF mendukung berbagai teknologi seperti Web Service, Binary .NET to .NET communication, Distributed Transaction, Queued Messaging serta Restful Communication. WCF mendukung komunikasi melalui Web Service hal ini menyebabkan WCF dapat saling beroperasi dengan aplikasi platform lain yang mendukung SOAP. WCF tidak mengharuskan untuk menggunakan
3
protokol HTTP, tetapi juga bisa menggunakan TCP. Pertukaran pesan pun bisa menggunakan selain SOAP, tetapi bisa juga menggunakan XML sederhana ataupun JSON. 2.4.4 Microsoft Interface [7]
Bing
Application
bersama sama berkolaborasi untuk membuat peta pikiran secara waktu nyata didalam suatu room. Proses kolaborasi ini diwujudkn dengan sebuah sistem klien-server. Aplikasi server akan memberikan services yang digunakan aplikasi klien untuk dapat berkomunikasi satu dengan yang lain. Services yang disediakan oleh server disini diimplementasikan menggunakan WCF dengan protokol Net.TCP. Penggunaan protokol ini ditujukan supaya komunikasi yang terjadi klienserver bisa secara dua arah, sehingga klien tidak perlu melakukan request ke server secara periodik untuk memperbarui data yang tersedia.
Program
Bing adalah suatu mesin pencari yang dibangun oleh Microsoft. Mesin pencari ini menyedian beberapa layanan berupa API (Application Program Interface) yang bisa digunakan oleh aplikasi lainnya. Salah satu layanan yang disediakan oleh Bing, adalah Bing Search. Layanan ini berguna untuk mencari situs situs web terkait dengan kata kunci yang dimasukan. Selain b. Pembangkitan peta pikiran dari dokumen digunakan untuk mencari situs situs website, Bing Untuk membangun skema yang berupa peta Search ini juga bisa digunakan untuk melakukan pikiran dari sebuah dokumen diterapkan langkah pencarian terhadap gambar ataupun video. API yang langkah sebagai berikut dibawah ini. disediakan oleh Bing berupa layanan web sehingga memudahkan pengguna dalam menerapkannya. 1. Pusat dari peta pikiran yang terbangun diisi dari judul dokumen yang dimasukan. 3. ANALISIS DAN PERANCANGAN 2. Jika dokumen yang dimasukan memiliki heading yang tersusun, maka topic dan 3.1 Analisis Perangkat Lunak subtopic dari peta pikiran diambil dari susuanan heading tersebut. Dalam Tugas Akhir ini, dibangun aplikasi 3. Jika dalam sebuah chapter dari dokumen pembuat peta pikiran berbasis pembelajaran kolaborasi tersebut hanya berisi paragraf, maka digunakan yang bernama Dreamshare. Aplikasi ini merupakan proses TF-IDF (term frequencies–invers aplikasi pembuat peta pikiran berdasar konsep peta document frequencies) dokumen tersebut untuk pikiran yang dipaparkan oleh Tony Buzzan dalam menentukan subtopic apa saja yang bias bukunya yang berjudul “The Ultimate Books of Mind merepresentaskan paragraf tersebut. Map”. Aplikasi Dreamshare ini dibuat dengan tujuan menjadi media pembelajaran yang memiliki konsep pembelajaran kolaborasi. Konsep pembelajaran 3.2 Arsitektur Sistem kolaborasi yang diwujudkan oleh media pembelajaran Berikut ini merupakan arsitektur yang ini adalah sistem akan memfasilitasi pengguna untuk digunakan untuk membangun aplikasi Dreamshare. bisa berkolaborasi dalam waktu nyata bersama Secara keseluruhan sistem yang menaungi pengguna pengguna lain yang tergabung disuatu room Dreamshare dibagi menjadi enam buah lapisan utama. dalam menyampaikan ide dan gagasannya melalui Lapisan tersebut adalah Presentation Layer, Data proses peta pikiran. Sehingga para pengguna yang Model Layer. Bussines Logic Layer. Services Acces berkolaborasi tersebut bisa saling melengkapi ide dan Layer, Services Layer dan Services Model Layer. Pada gagasan satu sama lain. Untuk melengkapi kegunaan sebagai media Gambar 2 ditunjukan bagaimana keterhubungan pembelajaran yang menarik, efektif, dan efisien, antarlapisan. aplikasi ini juga dilengkapi dengan fitur pembangkitan peta pikiran secara otomatis dari sebuah dokumen. Dokumen yang diproses untuk dibangkitkan skema peta pikirannya harus berupa dokumen yang berbahasa inggris dan memiliki format Microsoft Word 2007 keatas. Pada sistem yang akan dibuat ini, dibutuhkan beberapa fungsi yang dapat membantu terwujudnya aplikasi Dreamshare, pembuat peta pikiran yang bisa menjadi media pembelajaran berbasis pembelajaran kolaborasi. Fungsi-fungsi tersebut adalah sebagai berikut ini. a.
Penyuntingan peta pikiran secara waktu nyata Fungsi utama yang dimiliki oleh aplikasi Dreamshare adalah menjadi peta pikiran editor. Dimana konsep pembelajaran kolaborasi diterapkan dengan cara pengguna bisa secara
Gambar 2 - Arsitektur Sistem
4
dari dokumen bisa dilihat pada Gambar 3.
3.2.1 Lapisan Antarmuka Lapisan Antarmuka (Presentation Layer) adalah lapisan antarmuka pengguna yang berhubungan langsung dengan pengguna akhir dari aplikasi Dreamshare. Lapisan ini diimplementasikan dengan menggunakan WPF dan diusahakan ramah dengan pegguna. Lapisan ini akan memanggil lapisan dibawahnya secara langsung, yaitu Lapisan Logika Bisnis. 3.2.2 Lapisan Logika Bisnis Lapisan Logika Bisnis (Bussines Logic Layer) adalah lapisan yang bertugas untuk mengurusi jalannya alur logika dari aplikasi. Lapisan ini bertugas untuk mengatur bagaimana data dialirkan, diproses hingga akhirnya ditampilkan ke antarmuka pengguna. Lapisan ini terdiri dari tiga buah komponen utama, komponen tersebut adalah seperti tersebut dibawah ini. Application Logic Komponen Application Logic berguna untuk mengatur aliran data utama dari keseluruhan aplikasi. Komponen inti bertugas melempar data data yang akan diproses dan juga akan ditampilkan. Semantic Processor Komponen Semantic Processor adalah komponen yang digunakan untuk membangun skema peta pikiran dari dokumen yang dimasukan. Untuk membangun skema yang berupa peta pikiran dari sebuah dokumen diterapkan langkah langkah sebagai berikut ini. 1. Pusat dari peta pikiran yang terbangun diisi dari judul dokumen yang dimasukan 2. Jika dokumen yang dimasukan memiliki heading yang tersusun, maka topik dan subtopik dari peta pikiran diambil dari susunan heading tersebut. 3. Jika dalam sebuah chapter dari dokumen tersebut hanya berisi paragraf, maka digunakan proses TF-IDF dokumen tersebut untuk menentukan subtopik apa saja yang bias merepresentaskan paragraf tersebut. Setelah semua kata dalam paragraf tersebut dihitung bobotnya menggunakan maka diambil kata kata yang memiliki nilai term lebih besar dari ambang batas yang telah ditentukan. Karena yang akan dijadikan subtopic dari paragraf tersebut adalah suatu frase dan bukan hanya kata, maka tahap selanjutnya ada mencari frase yang sesuai. Untuk membangun frase dari term yang memeiliki nilai diatas ambang batas tersebut dilakukan langkah langkah seperti berikut ini. 1. Diambil tujuh kata kedepan dan tujuh kata kebelakang dari term untuk dikombinasikan dengan term menjadi calon frase sehingga maksimal terdapat 14 calon frase. 2. Dari 14 calon frase tersebut, dihitung Koefisen Jaccard dan diambil frase dengan nilai paling tinggi. Setelah semua kombinasi calon frase dihitung nilai jaccardnya, diambil calon frase dengan nilai jaccard paling tinggi yang kemudian diangkat menjadi frase. Untuk diagram alir pembangkitan peta pikiran
Gambar 3 - Diagram Alir Membangkitkan Peta Pikiran dari Dokumen
Data Parser Data Parser adalah komponen yang bertugas dalam proses data parsing. Data parsing disini meliputi penyimanan data peta pikiran, pembangitan peta pikiran dari dokumen hingga Ekspor data peta pikiran menjadi dokumen. 3.2.3 Lapisan Model Data Lapisan Model Data (Data Model Layer) adalah bentuk dari rancangan data yang digunakan oleh aplikasi. Data ini adalah suatu pemodelan persistent data yang digunakan aplikasi untuk penyimpanan berkas. Diagram kelas untuk lapisan ini dapat dilihat pada Gambar 4.
Gambar 4 - Diagram Kelas Lapisan Model Data
3.2.4 Lapisan Akses Layanan Lapisan Akses Layanan (Services Access
5
Layer) adalah sebuah lapisan berupa proxy yang digunakan untuk mengakses layanan dari server. Lapisan ini akan mengakses layanan yang disediakan server kemudian meneruskan ke aplikasi yang menggunakanya. 3.2.5 Lapisan Layanan Lapisan Layanan (Services Layer) adalah lapisan dari sistem yang berada dalam server. Lapisan Layanan ini bertugas menyediakan layanan untuk menangani fungsioanl kolaborasi dari aplikasi Dreamshare. Lapisan ini diimplementasikan menggunakan WCF dengan protokol Net.TCP. 3.2.6 Lapisan Model Layanan Lapisan Model Layanan (Services Model Layer) adalah lapisan dari sistem yang bertugas menyediakan Data Contract untuk Lapisan Layanan. Data Contract ini digunakan oleh Lapisan Layanan sebagai data yang disepakati untuk layanan layanan yang digunakan oleh aplikasi klien. Diagram Kelas untuk lapidan Model Layanan dapat dilihat pada Gambar 5.
Berkas lainnya adalah Window1.xaml.cs yang mengurusi struktur logika dari aplikasi seperti dibawah ini.
Gambar 5 - Diagram Kelas Model Layanan
foreach (DS_Paragraph par in _document.Contexts) { foreach (string s in par.Words) { if (!StopWordsHandler.IsStopword(s)) { string word = CleanPunctuation(s); string steammed = _steammer.stemTerm(word.ToLower()); par.SteammedWords.Add(steammed); } } par.GenerateUniqueKeywords(); }
public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } }
4.2 Implementasi Lapisan Logika Bisnis Implementasi lapisan Logika Bisnis terdapat pada tiga komponen yang berbeda, yaitu komponen Application Logic, komponen Semantic Processor dan komponen Data Parser. 4.2.1 Implementasi Komponen Application Logic Komponen Application Logic adalah komponen logika utama yang digunakan untuk mengatur jalannya lembar kerja yang dibuka oleh aplikasi. Komponen ini dibuat instansiasi sebanyak lembar kerja yang dibuka di aplikasi. 4.2.2 Implementasi Komponen Semantic Processor Komponen Semantic Processor adalah komponen yang digunakan untuk pengolahan teks dengan melakukan perhitungan TF-IDF dan Koefisien Jaccard. Pengolahan teks tersebut dilakukan atas tahap-tahap berikut ini. Penghilangan Stopwords dan Melakukan Stemming
4. IMPLEMENTASI 4.1 Implementasi Lapisan Antarmuka Implementasi Lapisan Antarmuka dilakukan dengan menggunakan XAML. Untuk melakukan perancangan dari antarmuka aplikasi bisa menggunakan kakas bantuk Microsoft Expression Blend ataupun langsung menulis kode XAML secara manual. Dalam konteks aplikasi berbasis WPF, antarmuka utama yang muncul adalah sebuah Window. Di dalam Window tersebut dapat ditempatkan komponen-komponen antarmuka lainnya. Komponen-komponen tersebut bisa berupa komponen yang merupakaan bawaan dari WPF ataupun UserControl buatan pengembang. Ketika Window baru telah ditambahkan maka akan muncul dua buah berkas utama yang saling terkait. Berkas-berkas tersebut adalah Windows1.xaml seperti dibawah ini, yang mengurusi antarmuka.
Penghitungan TF
foreach (string s in _steammedWords) { _tfValues[s] = CalcFrequencies(s); }
Penghitugan DF
int retVal = 0; foreach (DS_Paragraph par in _document.Contexts) if (par.SteammedWords.Contains(word)) retVal++; foreach (DS_Heading head in _document.Headings) retVal += GetIDFFromWordHelper(word, head);
<Window mc:Ignorable="d" x:Class="Presentation.MainWindow" Title="Dreamshare 2011" Height="600" Width="800" WindowStyle="None" WindowState="Maximized" AllowsTransparency="True" Background="Transparent" Icon="/Presentation;component/Resource/Icon.png">
Penghitungan Bobot TF
foreach (KeyValuePair<string, int> pair in _tfValues) { _tfWeightValues[pair.Key] = 1 + Math.Log10(pair.Value); }
6
Penghitungan Bobot IDF
4.4 Implementasi Lapisan Akses Layanan
foreach (DS_Paragraph par in _document.Contexts) foreach (KeyValuePair<string, int> pair in par.IdfValues) par.IdfWeightValues[pair.Key] = Math.Log10(_document.N / pair.Value); foreach (DS_Heading head in _document.Headings) GenerateIDFWeightHelper(head);
Lapisan Akses Layanan ini berupa kelas yang menjadi proxy (penyedia) untuk menghubungi fungsi-fungsi pada server. Kelas ini diimplementasikan dengan pola perancangan Single Tone, sehingga ketika aplikasi dijalankan hanya akan ada satu bentuk instan dari kelas ini. Selain menjadi pemanggil fungsi-fungsi pada server, kelas ini juga menjadi callback jika server akan melakukan push ke klien. Untuk bisa melakukan push terhadap klien, maka kelas ini harus diregisterkan ke WCF Services yang berada dalam server.
Penghitungan Bobot TF-IDF
foreach (string s in _steammedWords) _tfIdfValues[s] = _tfWeightValues[s] * _idfWeightValues[s];
public class ServiceProxy : CollaborationServicesCallback
Penghitungan Koefisien Jaccard
Dictionary<string, double> tempDict = new Dictionary<string, double>(); foreach (KeyValuePair<string, double> pair in par.PhraseCandidate) { int intersect = CalcIntersectOf(par.HighestTerm, pair.Key); int union = CalcUnionOf(par.HighestTerm, pair.Key); double jaccardCoeff = (intersect / Math.Sqrt(union)); tempDict.Add(pair.Key, jaccardCoeff); }
4.5 Implementasi Lapisan Layanan Lapisan Layanan ini adalah lapisan dari aplikasi yang berada dalam server. Lapisan ini berguna untuk melakukan manajemen fungsional kolaborasi dan menangani komunikasi antar klien. Lapisan ini diimplementasikan menggunakan WCF dan memanfaatkan protokol Net.TCP binding. Binding ini dilakukan dengan cara melakukan konfigurasi seperti dibawah ini. <services> <service name="DreamServices.CollaborationServices"> <endpoint address="" binding="netTcpBinding" bindingConfiguration="tcpBindingNoSecurity" contract="DreamServices.Model.IDreamServer" /> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
4.2.3 Implementasi Komponen Data Parser Komponen Data Parser adalah komponen yang digunakan untuk melakukan proses konversi data. Fungsi-fungsi yang disediakan oleh komponen ini adalah sebagai berikut ini. Konversi Objek ke Binary
fileStream = File.Create(path); binaryFormater.Serialize(fileStream, obj); fileStream.Close();
Konversi Binary ke Objek
fileStream = File.OpenRead(path); T retVal = (T)binaryFormater.Deserialize(fileStream); fileStream.Close(); return retVal;
4.6 Implementasi Lapisan Model Layanan Implementasi Lapisan Model Layanan disini berupa Data Contract dan Services Contract. Data Contract adalah implementasi bentuk kesepakatan dari aplikasi server yang menyediakan layanan yang nantinya digunakan oleh aplikasi klien. Operation contract ini digunakan sebagai bentuk kesepakatan atas layanan layanan apa saja yang bisa diakses oleh klien dari server dan begitu juga sebaliknya.
4.3 Implementasi Lapisan Model Data Pada lapisan ini terdapat DS_IRenderable. Interface memiliki sebuah fungsi yang bernama CreateComponent(). Fungsi ini berguna untuk memproduksi komponen yang dapat digambar didalam suatu panel tertentu.
5. UJI COBA .5.1 Uji Coba Kebutuhan Fungsional
public interface DS_IRenderable { object CreateComponent(); }
Uji coba fungsionalitas dilakukan untuk melihat apakah fungsi-fungsi dasar aplikasi berjalan sebagaimana mestinya. Uji coba fungsionalitas meliputi semua Kasus Pengunaan yang telah dijelaskan pada Bab 3. Tolak ukur uji coba ini adalah aplikasi dapat berfungsi secara normal dan sesuaidengan yang diharapkan dalam membuat peta pikiran. Contoh peta pikiran yang dibuat oleh aplikasi terdapat pada Gambar 6.
Kelas-kelas lain yang berada dalam Lapisan Model Data ini adalah sebagai berikut.
DS_Node.cs DS_NodeStyles.cs DS_Point.cs DS_Color.cs DS_TextStyle.cs DS_Edge.cs DS_EdgeStyle.cs DS_MindMapFile.cs
Kelas-kelas tersebut berguna untuk menyimpan data-data pada lembar kerja yang dibuka pada aplikasi.
7
membangkitkan peta pikiran dari dokumen. Dari hasil uji coba subjektifitas dapat dilhat bahwa nilai akhir adalah 3,39 dari nilai maksimal 4. Dengan kata lain nilai akhir dari uji coba subjektifitas adalah 84,65 %. %. Dari hasil ini maka aplikasi telah layak digunakan dengan sebagaimana mestinya. Gambar 6 - Peta Pikiran Hasil Aplikasi
7. DAFTAR PUSTAKA [1]Buzan, Tony. The Ultimate Book of Mind Maps. Jakarta: Gramedia Pustaka Utama, 2011: 979-222351-7. [2]Orvis, Kara dan Lassiter, Andrea. 2007. Computer Supported Collaborative Learning. New York: Hershey, 2005. 978-1-59904-755-3 [3]Salton, G. dan M. J. McGill. Introduction Modern Information Retrieval. New York: McGraw-Hill, 2005. 0070544840. [4]Lidin, Serge. Expert.NET 4.0. New York: Apress, 2011. 978-1-59059-646-3 [5]MacDonald, Matthew. ProWPF in C# 2008. New York: Apress, 2008. 978-1-59059-955-6 [6]Peiris, Chris. ProWCF Practical Microsoft SOA Implementation. New York: Apress, 2007. 978-159059-702-6 [7]Bing API Documentation.2011. [Diakses pada tanggal 21 agustus 2011]. < url: http://www.bing.com/toolbox/bingdeveloper/ >
5.1 Uji Coba Validasi Uji coba validasi dilakukan untuk menghitung validitas terhadap proses pembangkitan peta pikiran dari dokumen. Uji coba ini dilakukan dengan cara meminta lima belas orang responden untuk membuata peta pikiran dari sebuah dokumen kemudian dibandingkan dengan peta pikiran hasil dari pembangkitan oleh aplikasi pada dokumen yang sama. Pembandingan peta pikiran tersebut dilakukan dengan cara menghitung jumlah simpul dari peta pikiran hasil buatan responden yang sesuai dengan simpul dari peta pikiran hasil pembangkitan aplikasi. Hasil dari uji validasi dapat dilihat pada Gambar 7.
Gambar 7 - Hasil Uji Validasi
5.1 Uji Coba Subjektifitas Pengujian subyektif dilakukan untuk mengetahui penilaian dan tanggapan dari pengguna terhadap sejumlah aspek dari aplikasi Dreamshare ini. Pengujian subjektif dilakukan dengan melibatkan limabelas orang penguji dari kalangan TI dan belum pernah menggunakan aplikasi ini serta setidaknya pernah menggunakan aplikasi sejenis, seperti MindJet MindMap Manager. Hasil dari uji subjektifitas dapat dilihat pada Gambar 8.
Gambar 8 - Hasil Uji Subjektifitas
6. KESIMPULAN Dari uji fungsional didapatkan bahwa fungsional aplikasi sebagai editor peta pikiran yang berbasis pembelajaran kolaborasi telah berjalan seperti yang diharapkan. 6. Dari hasil uji coba validasi dapat dilihat bahwa peta pikiran hasil pembangkitan aplikasi memiliki kesesuaian secara rata-rata sejumlah 0,526922 atau 52,6922 %. Sehingga masih diperlukan perbaikan terhadap metode dan algoritma untuk
8
9