1. PREDIKSI NILAI DENGAN METODE SPECTRAL CLUSTERING DAN CLUSTERWISE REGRESSION

  Ahmad Yusuf & Handayani Tjandrasa, Prediksi Nilai dengan …

   Vol. 4, No. 1 Juni 2014

ISSN 2088-2130 PREDIKSI NILAI DENGAN METODE SPECTRAL

  1*) 1) 1)

Ahmad Yusuf , Handayani Tjandrasa

  Teknik Informatika, Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya, Indonesia

   ABSTRAK

  Prediksi nilai adalah hal yang terus dikembangkan dalam penggalian data. Regresi linier merupakan metode dasar dalam memprediksi nilai berdasar variabel-variabel pada data. Salah satu hal yang mempengaruhi kualitas dari hasil regresi adalah persebaran data latih. Data latih terkadang membuat persamaan regresi kurang optimal. Hal ini dapat diantisipasi dengan

mengelompokkan data terlebih dahulu kemudian membangun model regresi dari masing-

masing kelompok. Pengelompokan data dilakukan dengan menggunakan algoritma Spectral Clustering , sedangkan model regresi dibangun dengan algoritma Clusterwise Regression. Hasil prediksi merupakan hasil perkalian keanggotaan fuzzy data uji dengan persamaan regresi pada masing-masing kelompok. Metode ini diujicobakan terhadap beberapa dataset yang bervariasi yang dibandingkan dengan metode regresi linear biasa. Ukuran pengujian yang digunakan adalah Root Mean Square Error yang menghitung kesalahan dari hasil prediksi. Semakin kecil nilai RMSE suatu metode maka metode tersebut semakin baik. Berdasar pada uji coba yang dilakukan, penggunaan metode yang diusulkan mampu memprediksi nilai dengan kesalahan sekitar 3 sampai 6 persen. Parameter jumlah cluster juga berpengaruh terhadap hasil prediksi yaitu berbanding terbalik dengan nilai RMSE.

  Kata kunci: Clusterwise Regression, Pengelompokan, Penggalian Data, Prediksi, Regresi, Spectral Clustering .

  ABSTRACT Predicted values are continuously being developed in data mining. Linear regression is a basic method for predicting the value of variables based on the data. One that affects the

quality of the regression is the spread of the data training. Data training sometimes make less

optimal regression model. It can be anticipated by clustering the data first and then building the regression model of each cluster. We are using Spectral Clustering for clustering data, whereas regression model is built with Clusterwise Regression algorithm. The prediction result is obtained by multiplying fuzzy membership data testing with the result of regression equation in each group. This method is tested against several variations dataset compared to standard linear regression methods. Measure of the test used is Root Mean Square Error that computes the error of the predicted results. The smaller the RMSE value indicates the method is the better method in predictioning value. Based on experiments performed, the proposed method is able to predict the score with the error about 3

  • – 6 percent. Number of clusters as parameter affects the prediction, which is inversely proportional to the value of RMSE. Keywords: Clusterwise Regression, Clustering, Data Mining, Prediction, Regression, Spectral Clustering

  Jurnal Ilmiah SimanteC Vol. 4, No. 1 Juni 2014 PENDAHULUAN

  Regression . Hasil algoritma ini nantinya

  per gallon) [4]. Atribut mpg merupakan

  adalah data penggunaan bahan bakar yang dihitung dengan satuan mpg (miles

  Dataset Auto MPG (dataset 3)

  5 merupakan dataset yang bersumber dari uci dataset repository yang bersifat data regresi.

  Dataset 1 dan 2 merupakan nilai praktikum struktur data yang berisi nilai modul-modul praktikum sebagai nilai prediktor dan satu nilai proyek akhir sebagai variabel respon. Dataset 3, 4, dan

  repository [4]. Dataset yang digunakan dapat dilihat pada Tabel 1.

  Data masukan pada penelitian ini adalah kumpulan data yang berasal dari berbagai sumber dimana variabel yang diprediksi bersifat kontinu. Pada penelitian ini digunakan 5 dataset, 2 dataset merupakan data nilai praktikum mahasiswa dan 3 sisanya merupakan dataset yang bersumber dari uci dataset

  DATA

  dapat digunakan dalam memprediksi nilai dalam berbagai bidang misalnya pendidikan (prediksi nilai siswa, dsb), ekonomi (prediksi nilai saham, dsb), dan lain-lain.

  pengoptimalan model prediksi dengan melakukan inisialisasi cluster dalam pemodelan regresi dan melakukan pembobotan pada tahap regresi menggunakan metode Clusterwise

  Salah satu aplikasi data mining adalah prediksi nilai dari sejumlah variabel data tertentu. Model yang umumnya digunakan dalam prediksi nilai adalah Regresi Linier. Dengan regresi akan didapatkan nilai prediksi sesuai dengan variabel-varibel yang mempengaruhi pada data. Hanya saja permasalahannya kualitas regresi biasanya tergantung pada model training. Persebaran data yang tidak merata pada data training dapat menyebabkan model regresi yang dibentuk kurang akurat, sehingga prediksi yang dihasilkan kurang baik. Persamaan regresi dapat diperbaiki dengan mengelompokkan data dalam membangun model regresi. Dengan data yang lebih seragam diharapkan dapat membentuk model regresi yang lebih baik. Pemodelan regresi dengan pengelompokan data selanjutnya disebut dengan Clusterwise Regression [1,2].

  Clusterwise Regression dan Spectral Clustering . Pada penelitian ini dilakukan

  mengelompokkan data berdasarkan kesamaan dari tiap data [3]. membangun model yang mampu melakukan prediksi nilai dengan metode

  Clustering . Spectral Clustering

  Algoritma Clustering yang sangat umum digunakan adalah K- Means Clustering. Metode K-means mudah dalam implementasi serta memiliki waktu komputasi yang cukup cepat. Tetapi metode ini mempunyai kelemahan dalam menganalisis persebaran data serta bergantung pada inisialisasi centroid. K-means hanya melihat jarak data ke masing-masing centroid pada setiap cluster [3]. Salah satu metode Clustering lain yang pernah dikembangkan dalam memperbaiki akurasi regresi adalah Spectral

  dalam inisialisasi cluster adalah dengan metode Clustering.

  cluster dalam pemodelan Clusterwise Regression selanjutnya. Salah satu cara

  secara acak [1]. Hal ini dapat menyebabkan komputasi dalam pembentukan model regresi cukup besar untuk mencapai konvergen. Oleh karena itu, sebaiknya dilakukan inisialisasi

  Clusterwise Regression , inisialisasi cluster dilakukan

  Pada metode

  nilai penggunaan bahan bakar yang merupakan variabel respon dari dataset tersebut. Tujuh atribut lainnya merupakan atribut prediktor yang mempengaruhi penggunaan bahan bakar yang meliputi silinder yang digunakan kendaraan, tenaga kuda dari kendaraan, dan sebagainya. Atribut nama mobil tidak digunakan dalam penelitian ini karena bernilai string yang berbeda-beda dari setiap record pada Dataset Auto MPG.

  • – UCI 506
  • – UCI 209

  ) min( ) max( ) min( , , j i j j i j i

  Dataset Computer Hardware

  merupakan data performa relatif dari cpu [4]. Dataset ini terdiri dari 9 atribut, dimana Atribut PRP merupakan performa relatif CPU yang digunakan sebagai variabel respon. Atribut lainnya selain Vendor Name dan Model Name digunakan sebagai variabel prediktor.

  Atribut Vendor Name dan Model Name tidak digunakan karena memiliki nilai string. Variabel prediktor yang digunakan meliputi cycle time mesin (MYCT), memory minimal (MMIN) dan maksimal (MMAX), dan sebagainya.

  METODE Tahap Pra Proses

  Pra proses yang dilakukan adalah penanganan missing value. Nilai- nilai yang kurang pada data akan diganti dengan rata-rata nilai pada atribut yang bersesuaian jika atribut tersebut merupakan numerik, dan akan diganti dengan modus nilai atribut yang bersesuaian jika nominal.

  Pada tahap pra proses juga dilakukan normalisasi data. Normalisasi data dilakukan untuk menyeragamkan interval data. Keseragaman data berpengaruh dalam perhitungan matriks- matriks pada data. Normalisasi yang dilakukan merupakan normalisasi kolom/atribut. Normalisasi dilakukan berdasar persamaan 1

  x x x x x

  Dataset Computer Hardware

   

   Dimana merupakan nilai normalisasi data pada baris i dan atribut j, xi,j merupakan data aslinya, dan min(xj) merupakan nilai minimal dari atribut j, sedangkan max(xj) merupakan nilai maksimalnya. Keluaran dari proses normalisasi ini berupa data yang memiliki interval 0 sampai 1.

  Tahap Clustering Clustering

  merupakan salah satu metode eksplorasi data yang digunakan dalam mencari pola yang ada pada suatu dataset. Pada umumnya pola tersebut dapat dilihat dari kesamaan sifat, karakteristik, atau ciri dari record-

  record pada dataset [5,6].

  Salah satu metode Clustering adalah Spectral Clustering . Pada

  Spectral Clustering , pengelompokkan

  merupakan dataset ke-5 yang digunakan dalam uji coba pada penelitian ini.

  Variabel respon dari dataset ini adalah nilai median kepemilikan rumah pada suatu kota dalam satuan 1000 US Dollar yang ditunjukkan pada atribut MEDV. Variabel prediktornya merupakan atribut lainnya antara lain rata-rata kejahatan pada kota bersangkutan (CRIM), proporsi tanah residential (ZN), proporsi bisnis non-retail (INDUS), dan sebagainya.

  Ahmad Yusuf & Handayani Tjandrasa, Prediksi Nilai dengan …

  3 Data Auto MPG - UCI 398

  Tabel 1 Dataset yang digunakan pada penelitian No Dataset Jumlah Record Jumlah Atribut Missing Value

  1 Nilai Praktikum Struktur Data Teknik Informatika

  ITS 2008/2009 180

  6 Tidak Ada

  2 Nilai Praktikum Struktur Data Teknik Informatika

  ITS 2010/2011 153

  4 Tidak Ada

  8 Ada

  Housing terdiri dari 13 atribut kontinu dan 1 atribut yang bersifat diskrit.

  4 Data Housing

  14 Tidak Ada

  5 Data Computer Hardware

  8 Tidak Ada

  Dataset ke-4 adalah dataset

  Housing yang merupakan data nilai

  kepemilikan rumah di sebagian wilayah Boston, Amerika Serikat [4]. Dataset

  didasarkan atas kesamaan antara setiap data. Kesamaan tersebut dilihat dari (1)

  Jurnal Ilmiah SimanteC Vol. 4, No. 1 Juni 2014 Spectral Clustering akan dibentuk pada data masukan.

  sebuah graf dari data yang ada. Dimana

  5. Normalisasi data dengan matriks k- verteks dari graf tersebut merupakan eigen sehingga akan terbentuk k setiap record pada data. Edge-nya kolom yang merepresentasikan setiap berupa hubungan antar data yang nilai normalisasi eigen pada setiap biasanya bernilai jarak dari dua record kolomnya. yang berhubungan [7].

  6. Hasil dari data normalisasi kemudian Langkah-langkah dalam di-cluster dengan K-Means melakukan Spectral Clustering adalah Clustering . Data normalisasi sebagai berikut [3,8]: mewakili masukan data latih. Data

  1. Kontruksi graf similaritas dari dataset latih ke-i akan dimasukkan pada training. verteks pada graf tersebut suatu cluster jika dan hanya jika data merupakan representasi dari setiap hasil normalisasi ke-i masuk pada pada data training. Bobot dari yang sama.

  record cluster

  tiap edge merupakan jarak antara satu verteks dengan verteks lainnya. Mulai Perhitungan jarak antar verteks menggunakan persamaan jarak exponential yang tertulis pada Data Latih persamaan 2 [3]. 2 Jumlah Cluster (k)

  s s   i j

  (2)

  w  exp( ) ij 2

2 Setelah itu, bobot dari setiap edge Konstruksi graph similaritas

  yang ada dibentuk menjadi matriks

  weight . Dengan begitu matriks Konstruski matriks Bobot weight merupakan representasi graf

  similaritas dari dataset.

  2. Dari matriks weight dihitung derajat dari setiap verteks dengan Konstruksi matriks Laplacian menjumlahkan bobot dari edge yang terhubung pada verteks yang bersangkutan. Dari derajat verteks Konstruksi matriks k-eigen tersebut dapat dibentuk matriks degree yang merupakan matriks diagonal yang berisi bobot setiap verteks. Normalisasi matriks k-eigen

  3. Dibentuk normalisasi matriks

  Laplacian dengan menggunakan Cluster matriks k-eigen dengan K-

  matriks weight (W) dan matriks Means Clustering degree (D) yang telah dihitung sebelumnya. Perhitungan matriks Data yang ter-

  Laplacian (L) dengan rumus pada cluster persamaan (3) [9].

  L D W (3)   Selesai

  4. Dihitung k eigenvector pertama dari matriks Laplacian , dimana k merupakan parameter jumlah cluster.

  Gambar 1 Diagram Alir Algoritma Spectral

  Maka terbentuklah matriks k-eigen

  Clustering

  yang merupakan k eigenvector permata dari matriks Laplacian. Matriks k-eigen berukuran n x k,

  Ahmad Yusuf & Handayani Tjandrasa, Prediksi Nilai dengan … Mulai persamaan regresi linier.

  3. Masing-masing data latih akan dihitung nilai kesalahan yang paling Data yang sudah ter-cluster kecil dari persamaan regresi yang ada sesuai dengan persamaan 4. K k k 2 Min Z

  X b y  

    (4) k Pemodelan regresi masing-masing clusterk 1

  4. Ubah keanggotaan kelompok pada masing-masing data berdasarkan Hitung kesalahan prediksi data dengan dengan kesalahan prediksi yang fungsi regresi minimal.

  5. Ulangi langkah 2 sampai fungsi objektif yang ditentukan. Perbarui keanggotaan data Clusterwise Regression akan memodelkan n persamaan regresi dimana n adalah jumlah cluster dengan meminimalisasi SSE. Pada setiap iterasi Fungsi Objektif akan dimodelkan n persamaan regresi kemudian dihitung nilai kesalahan dan Y keanggotaan masing-masing data.

  Persamaan regresi, nilai kesalahan, dan k model regresi keanggotaan akan diperbarui pada tiap iterasi hingga mencapai model yang Selesei optimal atau jumlah iterasi tertentu.

  Tahap Prediksi

  Pada tahap uji masing-masing

  Gambar 2 Diagram Alir Algoritma

  data akan dihitung nilai fuzzy

  Clusterwise Regression

  keanggotaannya dengan masing-masing

  cluster yang ada. Nilai fuzzy Tahap Regresi

  keanggotaan (Zi) dari data (x) dihitung Selanjutnya dari masing-masing berdasarkan persamaan fuzzy k-nearest

  cluster yang dihasilkan akan diproses neighbor yang ditunjukkan pada

  dengan Clusterwise Regression. Pada persamaan 5 [10]. tahap regresi masukan berupa data yang

    telah terkelompokkan dalam k cluster. k 1  

  Z i , j   j 1 2 / m 1

  (5) Pada tahap tersebut akan dihasilkan k

    xx j

    ( x ) 

  model regresi yang dapat digunakan i

  Z k  

  pada tahap selanjutnya yaitu tahap uji. 2 / m 1

  1  

   j 1   xx

  Clusterwise Regression j  

  merupakan metode regresi yang dimana k yaitu jumlah tetangga terdekat, menggunakan lebih dari satu persamaan

  Zi,j merupakan nilai keanggotaan data regresi pada tahap latih. Data latih akan ke-j (xj) pada cluster i, dan m dikelompokkan terlebih dahulu sehingga merupakan parameter bobot. Hasil masing-masing kelompok akan dibentuk prediksi merupakan pernjumlahan dari persamaan regresi. perkalian antara bobot masing-masing

  Langkah-langkah dari algoritma cluster dan hasil prediksinya [11].

  Clusterwise Regression adalah sebagai

  berikut [1,2]:

  1. Data dibagi menjadi kelompok awal Q1, Q2, … , Qk

  • Spectral
  • Spectral Clustering

  Hasil uji coba merupakan hasil prediksi dari algoritma Clusterwise

  Regression

  dengan Spectral Clustering dengan beberapa nilai parameter jumlah

  cluster .

  Metode Clusterwise Regression-

  Spectral Clustering menggunakan

  parameter jumlah Clustering. Pada ujicoba dilakukan perbandingan kesalahan RMSE dengan nilai cluster bervariasi yaitu satu, dua, tiga, empat, dan lima cluster. Hasil uji coba ditunjukkan pada Tabel 2.

  Pada hasil uji coba terlihat bahwa RMSE terkecil diperoleh pada parameter jumlah cluster yang berbeda- beda pada masing-masing dataset. Pada dataset nilai praktikum struktur data tahun 2008/2009, nilai RMSE terkecil dicapai pada parameter jumlah cluster sama dengan 5 yaitu sebesar 2.526. Rentang nilai mahasiswa dari satu sampai 100 sehingga nilai kesalahan relatifnya sebesar 2.53 persen. RMSE terkecil pada dataset ke 2 yaitu dataset nilai praktikum struktur data tahun 2010/2011 dicapai pada parameter jumlah cluster sama dengan 4 sebesar 3,28 atau kesalahan relatifnya 3,28 persen.

  Data Housing

  MPG - UCI 1 3.873 2 4.148 3 3.623 4 2.953 5 2.595

  ITS 2010/2011 1 5.509 2 3.828 3 3.606 4 3.280 5 3.300 Data Auto

  Praktikum Struktur Data Teknik Informatika

  ITS 2008/2009 1 4.428 2 3.566 3 2.526 4 2.872 5 2.879 Nilai

  Nilai Praktikum Struktur Data Teknik Informatika

  Cluster RMSE Clusterwise Regression

  Clustering dengan parameter jumlah cluster yang bervariasi Dataset Jumlah

  Jurnal Ilmiah SimanteC Vol. 4, No. 1 Juni 2014 Tabel 2 Perbandingan RMSE Clusterwise Regression

  Untuk setiap pasangan data masukan dan data keluaran pada setiap parameter jumlah cluster akan dihitung kesalahan prediksinya menggunakan RMSE. Semakin keci nilai RMSE pada kesalahan hasil prediksi semakin kecil, begitu juga sebaliknya.

  • – UCI 1 5.587 2 5.749 3 4.175 4 3.211 5 5.054 Data Computer Hardware – UCI 1 59.228 2 55.113 3 55.745 4 46.553 5 50.625

UJI COBA

  (6) data, dan variabel x merupakan nilai prediksi yang dihasilkan model sedangkan variabel f merupakan nilai sebenarnya yang diinginkan.

      1 2 ) (

  n f x RMSE n i i i

  Squared Error

  Untuk mengukur performa yang dihasilkan, digunakan Root Mean

  Validation digunakan dalam pengujian model yang dihasilkan.

  Uji coba dilakukan dengan memprediksi dataset dengan metode yang diusulkan. Metode Cross

  Pada data Auto MPG nilai RMSE terkecil diperoleh pada parameter 5 cluster yaitu 2,595. Rentang nilai mpg pada dataset Auto MPG 0 sampai 46.6 sehingga nilai kesalahan relatifnya 5,57 persen. Pada dataset Housing nilai RMSE terkecil diperoleh pada parameter jumlah cluster 4 yaitu 3,211 atau kesalahan relatifnya 6,42 persen (rentang 0-50). Dataset kelima yaitu

  Computer Hardware RMSE terkecil

  (RMSE) yang ditunjukkan dengan persamaan 6 [12].

  Ahmad Yusuf & Handayani Tjandrasa, Prediksi Nilai dengan …

  Berdasarkan hasil uji coba, semakin banyak atribut prediktor yang digunakan maka nilai kesalahan relatifnya semakin besar secara umum. Dataset Auto MPG dan Computer

  Journal of Operational Research.

  mathematical programming approach to Clusterwise Regression model and its extensions . Elsevier European

  [1] Lau, Kin-nam., Leung, Pui-lam., Tse, Ka-kit. (1998). A

  Pada metode usulan diperlukan masukan jumlah cluster sebagai parameter. Parameter jumlah cluster memberikan pengaruh pada hasil prediksi. Pada ujicoba yang dilakukan masing-masing dataset akan menghasilkan model optimal pada parameter jumlah cluster tertentu bergantung pada karakteristik data. Jumlah atribut juga mempengaruhi hasil prediksi menggunakan metode yang diusulkan. Pada ujicoba yang dilakukan semakin banyak atribut maka nilai kesalahannya semakin besar. Hal ini dikarenakan adanya kemungkinan atribut-atribut yang tidak relevan dengan variabel respon.

  Regression biasa sebesar 30 sampai 40 persen.

  Metode usulan mampu melakukan prediksi nilai yang telah diujicobakan pada beberapa dataset dengan nilai kesalahan relatif 3 sampai 6 persen. Algoritma Clusterwise Regression dengan Spectral Clustering mampu mereduksi kesalahan RMSE dari hasi prediksi menggunakan Multiple

  Regression dengan Spectral Clustering.

  Prediksi nilai merupakan salah satu bagian dari penggalian data yang terus dikembangkan. Pada penelitian ini diusulkan algoritma Clusterwise

  SIMPULAN

  persen. Dataset nilai praktikum yang memiliki atribut lebih sedikit menunjukkan kesalahan relative yang lebih kecil yaitu 2 sampai 3 persen.

  Hardware memiliki 7 atribut prediktor

  Dataset Housing memiliki atribut prediktor dibandingkan dengan dataset lainnya yaitu 13 atribut. Hal ini dapat menyebabkan hasil kurang optimal karena memungkinkan adanya atribut- atribut yang tidak relevan.

  sama dengan 4 yaitu 46,553. Kesalahan relatif pada dataset Computer Hardware sebesar 4,05 persen (0 - 1150). Dari hasil analisis diatas nilai kesalahan relatif yang dicapai dari dataset yang digunakan sekitar 3 sampai 6 persen.

  Housing .

  Pada hasil uji coba nilai kesalahan relatif paling besar (6 persen) didapatkan pada dataset

  bahwa nilai RMSE pada hasil prediksi dataset menggunakan metode yang diusulkan lebih kecil dibandingkan dengan RMSE pada hasil prediksi menggunakan Multiple Regression . Reduksi kesalahan RMSE yang dihasilkan sekitar 30 hingga 40 persen. Hal ini menunjukkan bahwa metode pada penelitian ini mampu mengoptimalkan performa dari prediksi nilai menggunakan regresi linier.

  Clustering dari hasil ujicoba terlihat

  dan Clusterwise RegressionSpectral

  Multiple Regression (jumlah cluster = 1)

  Perbandingan nilai RMSE dari

  dapat terjadi karena hasil Clustering yang digunakan selanjutnya dalam proses prediksi kurang optimal untuk dimodelkan persamaan regresi.

  cluster -1 dan jumlah cluster +1. Hal ini

  nilai RMSE yang lebih besar parameter jumlah cluster tertentu dari jumlah

  cluster . Pada beberapa kasus terlihat

  Dari perubahan jumlah cluster secara umum terlihat bahwa semakin besar jumlah cluster maka nilai kesalahan yang dihasilkan semakin kecil sampai pada titik optimal. Dari kelima dataset yang diujicobakan menunjukkan tren yang relatif sama yaitu nilai RMSE berbanding terbalik dengan jumlah

DAFTAR PUSTAKA

  Jurnal Ilmiah SimanteC Vol. 4, No. 1 Juni 2014

Maximum Likelihood Methodology

for Clusterwise Linear Regression .

  [3] Trivedi, S., A. Pardos, Z., & N.

  Sar, G. (2008). Spectral Clustering in Educational Data Mining . [4] UCI Machine Learning Repository,

  <URL: >, diakses pada 1 April 2013. [5] Tan, P.-N., Steinbach, M., &

  Kumar, V. (2006). Introduction to

  

Data Mining. Minnesota: Addison-

Wesley .

  [6] Zhang, Z., Wu, X., & S. Yu, P.

  (2006). Spectral Clustering for Multi-type Relational Data . [7] Y. Ng., A., I. Jordan, M., & Weiss,

  Y. (2002). On Spectral Clustering : Analysis and Algorithm . [8] Von Luxburg, U. (2007). A Spectral Clustering.

  Tutorial on 17(4).

  [9] Mohar, B. (1991). The Laplacian

  

Spectrum of Graphs, In Graph

Theory . 871-898.

  [10] Keller, James M., Gray, Michael R., Givens, James A. Jr. (1985). A Fuzzy K-Nearest Neighbor Algorithm. IEEE Transactions on Systems, Mans, and Cybernetics.

  [11] Luo, Zairen., Chou, Eddie Y.

  (2006). Pavement Condition

  

Prediction Using Clusterwise

Regression . [12] Karagozog'lu, B., & Turkmen, N.

  (2007). A software tool to facilitate

  

design, assessment and evaluation

of courses in an educational

system.