Implementasi Metode Smart (Simple Multi Attribute Rating Technique) dan Metode WP (Weighted Product) pada Sistem Pendukung Keputusan dalam Menentukan Paket Internet

(1)

LISTING PROGRAM

Main.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace SpkInternet {

public partial class Main : Form {

string connectionSQL = "server=localhost;database=internet; uid=root;password=;"; public Main() { InitializeComponent(); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.MinimizeBox = false;

}

private void pilihPaketToolStripMenuItem_Click(object sender, EventArgs e)

{

Form input = new Input(); input.Show();

}

private void metodeSMARTToolStripMenuItem_Click(object sender, EventArgs e)

{

Form metodeSmart = new smart(); metodeSmart.Show();

}

private void inputToolStripMenuItem_Click(object sender, EventArgs e) {

Form input = new Input(); input.Show();

}

private void metodeWeihtedProductToolStripMenuItem_Click(object sender, EventArgs e)

{

Form wp = new wp(); wp.Show();

}

private void kesimpulanToolStripMenuItem_Click(object sender, EventArgs e)

{

Form hasil = new kesimpulan(); hasil.Show();


(2)

private void Main_FormClosed(object sender, FormClosedEventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); MySqlCommand delete = db.CreateCommand();

string commend = "delete from spk where kuota>1;"; db.Open();

delete.CommandText = commend;

MySqlDataReader reader = delete.ExecuteReader(); db.Close();

commend = "delete from smart where total>0;"; db.Open();

delete.CommandText = commend; reader = delete.ExecuteReader(); db.Close();

commend = "delete from wp where total>0;"; db.Open();

delete.CommandText = commend; reader = delete.ExecuteReader(); db.Close();

commend = "delete from waktu where waktu>0;"; db.Open();

delete.CommandText = commend; reader = delete.ExecuteReader(); db.Close(); } } } Input.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace SpkInternet {

public partial class Input : Form {

string connectionSQL = "server=localhost;database=internet; uid=root;password=;";

string[,] n = new string[99,5]; int[] volume = new int[99]; int[] price = new int[99]; int[] periode = new int[99]; int[] speed = new int[99];

public Input() {

InitializeComponent();


(3)

this.FormBorderStyle =

System.Windows.Forms.FormBorderStyle.FixedSingle; this.MaximizeBox = false; }

private void simpatiToolStripMenuItem1_Click(object sender, EventArgs e)

{

Form simpati = new Simpati(); simpati.Show();

}

private void asToolStripMenuItem_Click(object sender, EventArgs e) {

Form KartuAs = new As(); KartuAs.Show();

}

private void indosatToolStripMenuItem1_Click(object sender, EventArgs e)

{

Form indosat = new Indosat(); indosat.Show();

}

private void hotrodToolStripMenuItem_Click(object sender, EventArgs e) {

Form xlhotroad = new xl(); xlhotroad.Show();

}

private void hotrod4GToolStripMenuItem_Click(object sender, EventArgs e)

{

Form xlhotrod4g = new xl4g(); xlhotrod4g.Show();

}

private void regulerToolStripMenuItem_Click(object sender, EventArgs e) {

Form _3reg = new _3reguler(); _3reg.Show();

}

private void toolStripMenuItem3_Click(object sender, EventArgs e) {

Form _3tambah = new _3plus(); _3tambah.Show();

}

private void kendoToolStripMenuItem_Click(object sender, EventArgs e) {

Form _3kend = new _3kendo(); _3kend.Show();

}

private void Input_Load(object sender, EventArgs e) {


(4)

MySqlConnection db = new MySqlConnection(connectionSQL); MySqlCommand command = db.CreateCommand();

command.CommandText = "SELECT * FROM picked"; db.Open();

DataSet ds = new DataSet();

MySqlDataAdapter da = new MySqlDataAdapter(command); da.Fill(ds, "data");

dataGridView1.DataSource = ds; dataGridView1.DataMember = "data"; db.Close();

}

private void button1_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); MySqlCommand command = db.CreateCommand();

command.CommandText = "SELECT * FROM picked"; db.Open();

DataSet ds = new DataSet();

MySqlDataAdapter da = new MySqlDataAdapter(command); da.Fill(ds, "data");

dataGridView1.DataSource = ds; dataGridView1.DataMember = "data"; db.Close();

for (int rows = 0; rows < dataGridView1.Rows.Count; rows++) {

for (int col = 0; col < dataGridView1.Rows[rows].Cells.Count; col++)

{

n[rows, col] =

dataGridView1.Rows[rows].Cells[col].Value.ToString(); }

}

for (int i = 0; i < dataGridView1.Rows.Count; i++) {

if (Convert.ToDouble(n[i, 1]) <= 500) volume[i] = 20;

else if (Convert.ToDouble(n[i, 1]) > 500 && Convert.ToDouble(n[i, 1]) <= 1000)

volume[i] = 40;

else if (Convert.ToDouble(n[i, 1]) > 1000 && Convert.ToDouble(n[i, 1]) <= 5000)

volume[i] = 60;

else if (Convert.ToDouble(n[i, 1]) > 5000 && Convert.ToDouble(n[i, 1]) <= 10000)

volume[i] = 80; else

volume[i] = 100; }

for (int i = 0; i < dataGridView1.Rows.Count; i++) {

if (Convert.ToInt32(n[i, 2]) <= 25000) price[i] = 100;


(5)

else if (Convert.ToInt32(n[i, 2]) > 25000 && Convert.ToInt32(n[i, 2]) <= 50000)

price[i] = 80;

else if (Convert.ToInt32(n[i, 2]) > 50000 && Convert.ToInt32(n[i, 2]) <= 10000)

price[i] = 60;

else if (Convert.ToInt32(n[i, 2]) > 100000 && Convert.ToInt32(n[i, 2]) <= 250000)

price[i] = 40; else

price[i] = 20; }

for (int i = 0; i < dataGridView1.Rows.Count; i++) {

if (Convert.ToInt32(n[i, 3]) <= 7) periode[i] = 60;

else if (Convert.ToInt32(n[i, 3]) > 7 && Convert.ToInt32(n[i, 3]) <= 30)

periode[i] = 80; else

periode[i] = 100; }

for (int i = 0; i < dataGridView1.Rows.Count; i++) {

if (n[i, 4] == "3,5 G") speed[i] = 70; else

speed[i] = 100; }

}

private void button2_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin menghapus data ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand delete = db.CreateCommand();

string commend = "delete from picked where kuota>1;"; delete.CommandText = commend;

MySqlDataReader reader = delete.ExecuteReader(); db.Close();

} }

private void button3_Click(object sender, EventArgs e) {

dataGridView2.Rows.Clear(); dataGridView2.Refresh(); button1.PerformClick();


(6)

dataGridView2.Columns[0].Name = "Nama"; dataGridView2.Columns[1].Name = "Kuota"; dataGridView2.Columns[2].Name = "Harga"; dataGridView2.Columns[3].Name = "Masa Aktif"; dataGridView2.Columns[4].Name = "Jaringan"; string[] row = new string[99];

for (int i = 0;i < dataGridView1.Rows.Count;i++) {

row = new string[] { string.Concat(n[i, 0], " ", n[i, 1]), Convert.ToString(volume[i]), Convert.ToString(price[i]),

Convert.ToString(periode[i]), Convert.ToString(speed[i]) }; dataGridView2.Rows.Add(row);

} }

private void button4_Click(object sender, EventArgs e) {

DialogResult button = MessageBox.Show("Yakin untuk menyimpan data?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

for (int i = 0; i < dataGridView1.Rows.Count; i++) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

MySqlCommand input = db.CreateCommand(); string commend = "insert into

spk(nama,kuota,harga,masaaktif,jaringan) values('" + string.Concat(n[i, 0], " ", n[i, 1]) + "'," + volume[i] + "," + price[i]

+ "," + periode[i] + "," + speed[i] + ");";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); } } } } } smart.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MySql.Data.MySqlClient; using System.Diagnostics; namespace SpkInternet {


(7)

{

string[,] Total = new string[99, 6];

string connectionSQL = "server=localhost;database=internet; uid=root;password=;";

double total,n1,n2,n3,n4; double[] volume = new double[99]; double[] price = new double[99]; double[] periode = new double[99];

private void smart_Load(object sender, EventArgs e) {

label12.Text = ""; label13.Text = ""; label15.Text = ""; label16.Text = ""; label18.Text = ""; label19.Text = ""; label21.Text = ""; label22.Text = ""; }

double[] speed = new double[99];

double[] bobot_evaluasi = new double[99]; public smart()

{

InitializeComponent(); this.FormBorderStyle =

System.Windows.Forms.FormBorderStyle.FixedSingle; this.MaximizeBox = false;

}

private void button1_Click(object sender, EventArgs e) {

Stopwatch sw = Stopwatch.StartNew();

total = Convert.ToDouble(paket.Text) + Convert.ToDouble(harga.Text) + Convert.ToDouble(masaaktif.Text) + Convert.ToDouble(jaringan.Text);

label12.Text = string.Concat(paket.Text, " / ", Convert.ToString(total));

label15.Text = string.Concat(harga.Text, " / ", Convert.ToString(total));

label18.Text = string.Concat(masaaktif.Text, " / ", Convert.ToString(total));

label21.Text = string.Concat(jaringan.Text, " / ", Convert.ToString(total));

n1 = System.Math.Round((Convert.ToDouble(paket.Text) / total), 3); n2 = System.Math.Round((Convert.ToDouble(harga.Text) / total), 3); n3 = System.Math.Round((Convert.ToDouble(masaaktif.Text) / total), 3);

n4 = System.Math.Round((Convert.ToDouble(jaringan.Text) / total), 3);

label13.Text = Convert.ToString(n1); label16.Text = Convert.ToString(n2);


(8)

label19.Text = Convert.ToString(n3); label22.Text = Convert.ToString(n4);

MySqlConnection db = new MySqlConnection(connectionSQL); MySqlCommand command = db.CreateCommand();

command.CommandText = "SELECT * FROM spk"; db.Open();

DataSet ds = new DataSet();

MySqlDataAdapter da = new MySqlDataAdapter(command); da.Fill(ds, "data");

dataGridView1.DataSource = ds; dataGridView1.DataMember = "data"; db.Close();

for (int rows = 0; rows < dataGridView1.Rows.Count-1; rows++) {

for (int col = 0; col < dataGridView1.Rows[rows].Cells.Count; col++)

{

Total[rows, col] =

this.dataGridView1.Rows[rows].Cells[col].Value.ToString(); }

}

string[] row = new string[99];

for (int i= 0 ; i < dataGridView1.Rows.Count - 1; i++) {

volume[i] = Convert.ToInt32(Total[i, 2]) * n1; price[i] = Convert.ToInt32(Total[i, 3]) * n2; periode[i] = Convert.ToInt32(Total[i, 4]) * n3; speed[i] = Convert.ToInt32(Total[i, 5]) * n4; dataGridView3.ColumnCount = 5;

dataGridView3.Columns[0].Name = "Nama"; dataGridView3.Columns[1].Name = "Kuota"; dataGridView3.Columns[2].Name = "Harga"; dataGridView3.Columns[3].Name = "Masa Aktif";

dataGridView3.Columns[4].Name = "Jaringan";

row = new string[] { Total[i,1], Convert.ToString(volume[i]), Convert.ToString(price[i]), Convert.ToString(periode[i]),

Convert.ToString(speed[i]) };

dataGridView3.Rows.Add(row);

}

for (int i = 0; i < dataGridView1.Rows.Count-1; i++) {

bobot_evaluasi[i] = volume[i] + price[i] + periode[i] + speed[i];

db.Open();

MySqlCommand input = db.CreateCommand();

string commend = "insert into smart values('" + Total[i,1] + "'," + bobot_evaluasi[i] + ");";


(9)

MySqlDataReader reader = input.ExecuteReader(); db.Close();

}

MySqlCommand command2 = db.CreateCommand();

command2.CommandText = "SELECT * FROM smart order by total desc"; db.Open();

DataSet ds2 = new DataSet();

MySqlDataAdapter da2 = new MySqlDataAdapter(command2); da2.Fill(ds2, "data");

dataGridView2.DataSource = ds2; dataGridView2.DataMember = "data"; db.Close();

sw.Stop();

label7.Text= "Waktu Eksekusi : " + sw.Elapsed.TotalMilliseconds + " ms";

db.Open();

MySqlCommand inputwaktu = db.CreateCommand();

string commend1 = "insert into waktu values('smart'," + sw.Elapsed.TotalMilliseconds + "); ";

inputwaktu.CommandText = commend1;

MySqlDataReader reader2 = inputwaktu.ExecuteReader(); db.Close(); } } } wp.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MySql.Data.MySqlClient; using System.Diagnostics; namespace SpkInternet {

public partial class wp : Form {

string[,] Total = new string[99, 6];

string connectionSQL = "server=localhost;database=internet; uid=root;password=;";

double total, n1, n2, n3, n4, totalvektorS=0; double[] volume = new double[99];

double[] price = new double[99]; double[] periode = new double[99];

private void wp_Load(object sender, EventArgs e) {

label12.Text = ""; label13.Text = "";


(10)

label15.Text = ""; label16.Text = ""; label18.Text = ""; label19.Text = ""; label21.Text = ""; label22.Text = ""; }

double[] speed = new double[99]; double[] vektorV = new double[99]; double[] vektorS = new double[99]; public wp() { InitializeComponent(); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.MaximizeBox = false;

}

private void button1_Click(object sender, EventArgs e) {

Stopwatch sw = Stopwatch.StartNew();

total = Convert.ToDouble(paket.Text) + Convert.ToDouble(harga.Text) + Convert.ToDouble(masaaktif.Text) + Convert.ToDouble(jaringan.Text);

label12.Text = string.Concat(paket.Text, " / ", Convert.ToString(total));

label15.Text = string.Concat(harga.Text, " / ", Convert.ToString(total));

label18.Text = string.Concat(masaaktif.Text, " / ", Convert.ToString(total));

label21.Text = string.Concat(jaringan.Text, " / ", Convert.ToString(total));

n1 = System.Math.Round((Convert.ToDouble(paket.Text) / total), 3); n2 = System.Math.Round((Convert.ToDouble(harga.Text) / total), 3); n3 = System.Math.Round((Convert.ToDouble(masaaktif.Text) / total), 3);

n4 = System.Math.Round((Convert.ToDouble(jaringan.Text) / total), 3);

label13.Text = Convert.ToString(n1); label16.Text = Convert.ToString(n2); label19.Text = Convert.ToString(n3); label22.Text = Convert.ToString(n4); dataGridView1.Visible = false;

MySqlConnection db = new MySqlConnection(connectionSQL); MySqlCommand command = db.CreateCommand();

command.CommandText = "SELECT * FROM spk"; db.Open();


(11)

DataSet ds = new DataSet();

MySqlDataAdapter da = new MySqlDataAdapter(command); da.Fill(ds, "data");

dataGridView1.DataSource = ds; dataGridView1.DataMember = "data"; db.Close();

for (int rows = 0; rows < dataGridView1.Rows.Count - 1; rows++) {

for (int col = 0; col < dataGridView1.Rows[rows].Cells.Count; col++)

{

Total[rows, col] =

this.dataGridView1.Rows[rows].Cells[col].Value.ToString(); }

}

string[] row = new string[99];

for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) {

volume[i] =

System.Math.Round(Math.Pow(Convert.ToDouble(Total[i, 2]),n1),3);

price[i] = System.Math.Round(Math.Pow(Convert.ToDouble(Total[i, 3]),n2),3);

periode[i] =

System.Math.Round(Math.Pow(Convert.ToDouble(Total[i, 4]),n3),3); speed[i] = System.Math.Round(

Math.Pow(Convert.ToDouble(Total[i, 5]),n4),3); dataGridView3.ColumnCount = 5;

dataGridView3.Columns[0].Name = "Nama"; dataGridView3.Columns[1].Name = "Kuota"; dataGridView3.Columns[2].Name = "Harga"; dataGridView3.Columns[3].Name = "Masa Aktif"; dataGridView3.Columns[4].Name = "Jaringan";

row = new string[] { Total[i, 1], Convert.ToString(volume[i]), Convert.ToString(price[i]), Convert.ToString(periode[i]),

Convert.ToString(speed[i]) };

dataGridView3.Rows.Add(row); }

for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) {

vektorS[i] = volume[i] * price[i] * periode[i] * speed[i]; totalvektorS += vektorS[i];

}

for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) {

vektorV[i] = System.Math.Round((vektorS[i] / totalvektorS),3);

db.Open();


(12)

string commend = "insert into wp values('" + Total[i, 1] + "'," + vektorV[i] + ");";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); db.Close();

}

MySqlCommand command2 = db.CreateCommand();

command2.CommandText = "SELECT * FROM wp order by total desc"; db.Open();

DataSet ds2 = new DataSet();

MySqlDataAdapter da2 = new MySqlDataAdapter(command2); da2.Fill(ds2, "data");

dataGridView2.DataSource = ds2; dataGridView2.DataMember = "data"; db.Close();

sw.Stop();

label7.Text = "Waktu Eksekusi : " + sw.Elapsed.TotalMilliseconds + " ms";

db.Open();

MySqlCommand inputwaktu = db.CreateCommand();

string commend1 = "insert into waktu values('wp'," + sw.Elapsed.TotalMilliseconds + "); ";

inputwaktu.CommandText = commend1;

MySqlDataReader reader2 = inputwaktu.ExecuteReader(); db.Close(); } } } Simpati.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace SpkInternet {

public partial class Simpati : Form {

string connectionSQL = "server=localhost;database=internet; uid=root;password=;"; public Simpati() { InitializeComponent(); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;


(13)

this.MaximizeBox = false; this.MinimizeBox = false; }

private void label1_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo,MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',15,3750,1,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label11.Visible = true;

} }

private void label10_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',30,5000,2,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label12.Visible = true;

} }

private void label8_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',50,9000,7,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label13.Visible = true;


(14)

}

private void label9_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',100,14000,7,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label14.Visible = true;

} }

private void label7_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',300,28000,7,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label15.Visible = true;

} }

private void label3_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',600,47500,30,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label16.Visible = true;

} }


(15)

{

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',2000,87500,30,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label17.Visible = true;

} }

private void label4_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',4500,140000,30,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label18.Visible = true;

} }

private void label6_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',8000,275000,30,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label19.Visible = true;

} }

private void label5_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); db.Open();


(16)

DialogResult button = MessageBox.Show("Yakin memilih paket ini?", "WARNING", MessageBoxButtons.YesNo, MessageBoxIcon.Question,

MessageBoxDefaultButton.Button2);

if (button == DialogResult.Yes) {

MySqlCommand input = db.CreateCommand(); string commend = "insert into picked values('simpati',14000,480000,30,'3,5 G');";

input.CommandText = commend;

MySqlDataReader reader = input.ExecuteReader(); label20.Visible = true;

} }

private void Simpati_Load(object sender, EventArgs e) {

label11.Visible = false; label12.Visible = false; label13.Visible = false; label14.Visible = false; label15.Visible = false; label16.Visible = false; label17.Visible = false; label18.Visible = false; label19.Visible = false; label20.Visible = false; } } } kesimpulan.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace SpkInternet {

public partial class kesimpulan : Form {

string connectionSQL = "server=localhost;database=internet; uid=root;password=;"; public kesimpulan() { InitializeComponent(); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.MaximizeBox = false;

}

private void kesimpulan_Load(object sender, EventArgs e) {

label5.Text = "0.00"; label6.Text = "0.00";


(17)

MySqlConnection db = new MySqlConnection(connectionSQL); MySqlCommand command = db.CreateCommand();

command.CommandText = "SELECT * FROM smart order by total desc"; db.Open();

DataSet ds = new DataSet();

MySqlDataAdapter da = new MySqlDataAdapter(command); da.Fill(ds, "data");

dataGridView1.DataSource = ds; dataGridView1.DataMember = "data"; db.Close();

MySqlCommand command2 = db.CreateCommand();

command2.CommandText = "SELECT * FROM wp order by total desc"; db.Open();

DataSet ds2 = new DataSet();

MySqlDataAdapter da2 = new MySqlDataAdapter(command2); da2.Fill(ds2, "data");

dataGridView2.DataSource = ds2; dataGridView2.DataMember = "data"; db.Close();

MySqlCommand command3 = db.CreateCommand();

command3.CommandText = "SELECT * FROM waktu where id='smart'"; db.Open();

var r = command3.ExecuteReader(); if (r.HasRows)

{

r.Read();

label5.Text = r[1].ToString(); }

db.Close();

MySqlCommand command4 = db.CreateCommand();

command4.CommandText = "SELECT * FROM waktu where id='wp'"; db.Open();

var r2 = command4.ExecuteReader(); if (r2.HasRows)

{

r2.Read();

label6.Text = r2[1].ToString(); }

db.Close();

}

private void button1_Click(object sender, EventArgs e) {

MySqlConnection db = new MySqlConnection(connectionSQL); DialogResult button = MessageBox.Show("Semua data akan pada proses ini dihapus, apakah anda yakin?", "WARNING", MessageBoxButtons.YesNo,

MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (button == DialogResult.Yes)


(18)

{

MySqlCommand delete = db.CreateCommand();

string commend = "delete from picked where kuota>1;"; db.Open();

delete.CommandText = commend;

MySqlDataReader reader = delete.ExecuteReader(); db.Close();

MySqlCommand delete2 = db.CreateCommand(); commend = "delete from spk where kuota>1;"; db.Open();

delete.CommandText = commend; reader = delete.ExecuteReader(); db.Close();

MySqlCommand delete3 = db.CreateCommand(); commend = "delete from smart where total>0;"; db.Open();

delete.CommandText = commend; reader = delete.ExecuteReader(); db.Close();

MySqlCommand delete4 = db.CreateCommand(); commend = "delete from wp where total>0;"; db.Open();

delete.CommandText = commend; reader = delete.ExecuteReader(); db.Close();

MySqlCommand delete5 = db.CreateCommand(); commend = "delete from waktu where waktu>0;"; db.Open();

delete.CommandText = commend; reader = delete.ExecuteReader(); db.Close();

this.Close(); }

} } }


(19)

DAFTAR RIWAYAT HIDUP

Nama : Farid AG Hasyim

Tempat, Tanggal Lahir : Padang Panjang, 15 Agustus 1993 Jenis Kelamin : Laki-Laki

Alamat Sekarang : Jl. Sembada XII No. 16 Medan

Alamat Orang Tua : Jorong Baruah Pandai Sikek, Tanah Datar

Hp : 085362304333

Email : ag.faridh@gmail.com

PENDIDIKAN FORMAL

2011 – 2016 : S1 Ilmu Komputer Universitas Sumatera Utara, Medan 2008 – 2011 : SMK Negeri 2 Padang Panjang

2005 – 2008 : MTs Negeri Padang Panjang 1999 – 2005 : SD Negeri 2 Baruah Pandai Sikek 1998 – 1999 :TK Islamiah Pandai Sikek


(20)

DAFTAR PUSTAKA

Ahmad, Sultoni. 2013. Pengaruh Pemanfaatan Internet Sebagai Sumber Belajar Sejarah Terhadap Motivasi Belajar Siswa Kelas XI IPS SMAN 1 Wiradesa Kabupaten Pekalongan Tahun Pelajaran 2011/2012. Skripsi. Universitas Negeri Semarang.

Bagus Prasetyo, dkk. 2013. Sistem Pendukung Keputusan Pemilihan Paket Internet Operator Telekomunikasi dengan Metode AHP (Analytical Hierarchy Process). (Online)

http://p3m.sinus.ac.id/jurnal/index.php/TIKomSiN/article/download/125/21 (11 Maret 2015)

Daihani, D. U. 2001. Komputerisasi Pengambilan Keputusan : Panduan Langkah demi

Langkah Mengembangkan Sistem Pendukung Keputusan Berbasis Komputer. Elex

Media Komputindo: Jakarta.

Hasan. 2002. Pokok-pokok Materi Pengambilan Keputusan. Ghalia Indonesia: Jakarta.

Jaya, Putra. 2013. Sistem Pndukung Keputusan Penentuan Bonus Karyawan Menggunakan Metode Weighted Product (WP). Jurnal Pelita Informatika Budi Darma 5(2): 91.

Mukhsin Nasution. 2014. Implementasi Sistem Pendukung Keputusan untuk Menentukan Penjurusan Siswa dengan Menggunakan Metode Simple Multi Attribute Rating Technique (SMART). Jurnal Pelita Informatika Budi Darma 7(2): 14-19.

Noviadhista, U. F. 2015. Apakah Kebebasan Internet di Indonesia adalah yang Terburuk di dunia? (Online)


(21)

http://www.techno.id/tech-news/apakah-kebebasan-internet-di-indonesia-adalah-yang-terburuk-di-dunia-151116o.html (28 November 2015)

Oetomo Dharma Sutedjo, Budi. 2002. e-Education Konsep, Teknologi dan Aplikasi Internet Pendidikan. Andi: Yogyakarta.

Rustiawan, A.H., Destiani, D. & Ikhwana, A. 2012.Sistem Pendukung Keputusan Penyeleksian Calon Siswa Baru di SMA Negeri 3 Garut. Jurnal Algoritma Sekolah Tinggi Teknologi Garut 9(21): 4.

Sianturi, I. S. 2013. Sistem Pendukung Keputusan untuk Menentukan Pemilihan Jurusan Siswa dengan Menggunakan Metode Weighted Product (Studi Kasus: SMA Swasta HKBP Doloksanggul). Jurnal Informasi dan Teknologi Ilmiah STMIK Budidarma Medan 1(1): 20.

Situmeang, M. 2015. Perancangan Aplikasi Hasil Kinerja Dosen Terbaim dengan Metode Simple Multi Attribute Rating Technique (Studi Kasus: Akper Yayasan Binalita Sudama Medan). Jurnal Pelita Informatika Budi Darma 9(1): 130-132. Syofrin Fardilla. 2013. Sistem Pendukung Keputusan Pemilihan Paket Internet

dengan Basis Data Fuzzy Tahani. Skripsi. Sekolah Tinggi Teknik Indonesia Tanjung Pinang.

Turban, Efraim. 2005. Decision Support Systems and Intelligent Systems (Sistem Pendukung Keputusan dan System Cerdas). Andi: Yogyakarta.

Utami, Ema & Sukrisno. 2005. Konsep Dasar Pengolahan dan Pemrograman Database. Andi: Yogyakarta.

Wirija, Sudantha. 2005. Microsoft Windows Server 2003. Elex Media Komputindo: Jakarta.


(22)

Yulianti, Eva. 2015. Sistem Pendukung Keputusan Pemilihan Mobil dengan Metode SMART. Jurnal Momentum Jurusan Teknik Informatika Institut Teknologi Padang 17(1): 56.


(23)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1Analisis Sistem

Analisis sistem merupakam suatu proses yang harus dilakukan untuk menentukan permasalahan yang harus dihadapi. Tahap ini sangat penting, karena proses analisis yang kurang akurat akan menyebabkan hasil dari penggunaan perangkat lunak tidak sesuai. Pada penelitian ini, sistem yang akan dibangun adalah implementasi metode SMART dan metode Weighted Product pada sistem pendukung keputusan untuk menentukan paket internet.

3.2Analisis Masalah

Banyaknya provider GSM (Global System for Mobile Communication) di Indonesia memberikan layanan dan kemudahan akses internet. Dengan adanya persaingan operator ini konsumen dituntut untuk jeli dalam memilih paket internet yang sesuai dengan kebutuhan dan daya belinya. Sehingga tidak merugikan konsumen itu sendiri. Hal ini tentunya akan mempersulit para konsumen dalam menentukan pilihan yang tepat, sesuai dengan kriteria yang diinginkannya.

Untuk mengatasi masalah tersebut maka akan dibuat suatu sistem pendukung keputusan yang memudahkan konsumen dalam memilih paket internet yang akan digunakan. Dengan adanya sistem pendukung keputusan ini diharapkan dapat membantu konsumen dalam menentukan pilihan paket internet yang sesuai kebutuhan. Sistem pendukung keputusan merupakan salah satu cabang kecerdasan buatan (artificial intelligence) yang banyak digunakan. Terdapat banyak metode yang dapat digunakan oleh pengambil keputusan untuk membantu menemukan solusi atau alternatif yang optimum untuk sebuah masalah. Dalam sistem pendukung keputusan ini metode yang digunakan adalah Metode SMART (Simple Multi Attribute Rating Technuque) dan Metode WP (Weighted Product).


(24)

Untuk mengidentifikasi masalah tersebut digunakan diagram Ishikawa (fishbone diagram). Diagram Ishikawa merupakan sebuah alat grafis yang digunakan untuk mengidentifikasi, mengeksplorasi dan menggambarkan suatu masalah serta sebab dan akibat dari masalah tersebut. Diagram ini juga sering disebut sebagai diagram sebab-akibat atau diagram tulang ikan.

Gambar 3.1 Diagram Ishikawa

Pada diagram Ishikawa diatas masalah utama ditunjukkan oleh segi empat paling kanan (kepala ikan), sedangkan kategori ditunjukkan oleh segi empat yang dihubungkan oleh sebuah garis ke tulang utama (garis horizontal yang terhubung ke kepala ikan). Selanjutnya sebab akibat yang muncul ditunjukkan oleh tulang-tulang kecil yang diwakili oleh garis panah yang mengarah ke tulang-tulang kategori masalah.

3.3Analisis Persyaratan Sistem

Adapun analisis persyaratan sebuah sistem yaitu, analisis persyaratan fungsional dan analisis persyaratan non-fungsional.

3.3.1 Analisis Persyaratan Fungsional

Persyaratan fungsional adalah persyaratan apa yang harus dilakukan sistem. Persyaratan fungsional sistem yang akan dirancang adalah sistem harus mampu memberikan solusi terhadap sistem pendukung keputusan dalam menentukan paket internet dengan mengimplementasikan metode SMART dan metode Weighted Product.


(25)

3.3.2 Analisis Persyaratan Non-Fungsional

Persyaratan non-fungsional adalah segala sesuatu yang harus dimiliki oleh sistem. Beberapa persyaratan non-fungsional yang harus dipenuhi oleh sistem yang dirancang adalah sebagai berikut :

1. User friendly, artinya sistem harus mudah digunakan dengan tampilan yang mudah dimengerti sehingga dapat dioperasikan dengan baik oleh pengguna.

2. Sistem yang dirancang diharapkan untuk kedepannya dapat dikembangkan kembali bagi pihak tertentu yang ingin mengembangkan sistem sehingga bisa lebih efektif dan melengkapi kekurangan yang ada pada sistem.

3. Penggunaan sistem harus menghindari munculnya biaya tambahan.

3.4Analisis Kriteria

Dalam sistem pendukung keputusan ini, penulis mengambil data yang terdapat pada website masing-masing provider GSM dimana provider GSM yang digunakan adalah Simpati, As, Indosat, 3 dan XL. Paramater yang digunakan berdasarkan bobot dari setiap kriteria: kuota, harga, masa aktif dan jaringan.

3.4.1. Kriteria kuota

Kriteria kuota dibagi menjadi 5, yaitu: bernilai 20 jika sangat kecil (lebih kecil / sama dengan 500 MB), bernilai 40 jika kecil (lebih besar dari 500 MB sampai dengan 1 GB), bernilai 60 jika sedang (lebih besar dari 1 GB sampai dengan 5 GB), bernilai 80 jika besar (lebih besar dari 5 GB sampai dengan 10 GB) dan bernilai 100 jika sangat besar (lebih besar dari 10 GB).

Tabel 3.1. Kriteria kuota

Provider Kuota Nilai Keterangan

SIMPATI 15 MB 20 Sangat Kecil

30 MB 20 Sangat Kecil

50 MB 20 Sangat Kecil

100 MB 20 Sangat Kecil

300 MB 20 Sangat Kecil

600 MB 40 Kecil


(26)

Tabel 3.1. Kriteria kuota (lanjutan)

Provider Kuota Nilai Keterangan

SIMPATI 4.5 GB 60 Sedang

8 GB 80 Besar

14 GB 100 Sangat Besar

AS 10 MB 20 Sangat Kecil

20 MB 20 Sangat Kecil

30 MB 20 Sangat Kecil

60 MB 20 Sangat Kecil

100 MB 20 Sangat Kecil

500 MB 20 Sangat Kecil

900 MB 40 Kecil

1.3 GB 60 Sedang

1.8 GB 60 Sedang

3.5 GB 60 Sedang

8 GB 80 Besar

14 GB 100 Sangat Besar

INDOSAT 30 MB 20 Sangat Kecil

60 MB 20 Sangat Kecil

250 MB 20 Sangat Kecil

150 MB 20 Sangat Kecil

2 GB 60 Sedang

4.5 GB 60 Sedang

9.5 GB 80 Besar

20.5 GB 100 Sangat Besar

3++ 20 MB 20 Sangat Kecil

35 MB 20 Sangat Kecil

80 MB 20 Sangat Kecil

135 MB 20 Sangat Kecil

300 MB 20 Sangat Kecil

1.25 GB 60 Sedang

2 GB 60 Sedang

4.25 GB 60 Sedang

9 GB 80 Besar

3 Kendo 500 MB 20 Sangat Kecil

2.5 GB 60 Sedang

10 GB 80 Besar

3 Reguler 500 MB 20 Sangat Kecil

1 GB 40 Kecil

2 GB 60 Sedang

5 GB 60 Sedang

XL Hotrod 5 MB 20 Sangat Kecil

15 MB 20 Sangat Kecil

50 MB 20 Sangat Kecil

200 MB 20 Sangat Kecil

500 MB 20 Sangat Kecil


(27)

Tabel 3.1. Kriteria kuota (lanjutan)

Provider Kuota Nilai Keterangan

XL Hotrod 1.5 GB 60 Sedang

2 GB 60 Sedang

4.5 GB 60 Sedang

6 GB 80 Besar

12 GB 100 Sangat Besar

15 GB 100 Sangat Besar

XL Hotrod 4G 3.5 GB 60 Sedang

8 GB 80 Besar

14 GB 100 Sangat Besar

3.4.2. Kriteria harga

Kriteria harga dibagi menjadi 5, yaitu: bernilai 100 jika sangat murah (lebih kecil / sama dengan Rp. 25.000), bernilai 80 jika murah (lebih besar dari Rp. 25.000 sampai dengan Rp. 50.000), bernilai 60 jika sedang (lebih besar dari Rp. 50.000 sampai dengan Rp. 100.000), bernilai 40 jika mahal (lebih besar dari Rp. 100.000 sampai dengan Rp. 200.000) dan bernilai 20 jika sangat mahal (lebih besar dari Rp. 200.000).

Tabel 3.2. Kriteria harga

Provider Harga Nilai Keterangan

SIMPATI Rp. 3.750 100 Sangat Murah

Rp. 5.000 100 Sangat Murah

Rp. 9.000 100 Sangat Murah

Rp. 14.000 100 Sangat Murah

Rp. 28.000 80 Murah

Rp. 47.500 80 Murah

Rp. 87.500 60 Sedang

Rp. 140.000 40 Mahal

Rp. 275.000 20 Sangat Mahal

Rp. 480.000 20 Sangat Mahal

AS Rp. 2.250 100 Sangat Murah

Rp. 2.750 100 Sangat Murah

Rp. 4.500 100 Sangat Murah

Rp. 10.000 100 Sangat Murah

Rp. 15.000 100 Sangat Murah

Rp. 36.000 80 Murah

Rp. 52.500 60 Sedang

Rp. 77.500 60 Sedang

Rp. 95.000 60 Sedang

Rp. 150.000 40 Mahal

Rp. 250.000 20 Sangat Mahal


(28)

Tabel 3.2. Kriteria harga (lanjutan)

Provider Harga Nilai Keterangan

INDOSAT Rp. 2.900 100 Sangat Murah

Rp. 3.900 100 Sangat Murah

Rp. 10.900 100 Sangat Murah

Rp. 10.000 100 Sangat Murah

Rp. 34.900 80 Murah

Rp. 49.900 80 Murah

Rp. 99.000 60 Sedang

Rp. 199.900 40 Mahal

3++ Rp. 2.000 100 Sangat Murah

Rp. 3.000 100 Sangat Murah

Rp. 5.000 100 Sangat Murah

Rp. 7.000 100 Sangat Murah

Rp. 10.000 100 Sangat Murah

Rp. 33.000 80 Murah

Rp. 45.000 80 Murah

Rp. 80.000 60 Sedang

Rp. 150.000 40 Mahal

3 Kendo Rp. 7.500 100 Sangat Murah

Rp. 20.000 100 Sangat Murah

Rp. 65.000 60 Sedang

3 Reguler Rp. 35.000 80 Murah

Rp. 50.000 80 Murah

Rp. 75.000 60 Sedang

Rp. 125.000 40 Mahal

XL Hotrod Rp. 1.500 100 Sangat Murah

Rp. 3.000 100 Sangat Murah

Rp. 6.000 100 Sangat Murah

Rp. 12.000 100 Sangat Murah

Rp. 25.000 100 Sangat Murah

Rp. 30.000 80 Murah

Rp. 50.000 80 Murah

Rp. 60.000 60 Sedang

Rp. 100.000 60 Sedang

Rp. 120.000 40 Mahal

Rp. 200.000 40 Mahal

Rp. 240.000 20 Sangat Mahal

XL Hotrod 4G Rp. 100.000 60 Sedang

Rp. 200.000 40 Mahal


(29)

3.4.3. Kriteria masa aktif

Kriteria masa aktif dibagi menjadi 3, yaitu: bernilai 60 jika cepat (dibawah 7 hari), bernilai 80 jika sedang (7 sampai 30 hari) dan bernilai 100 jika lama (lebih dari 30 hari dan mengikuti masa aktif).

Tabel 3.3. Kriteria masa aktif

Provider Masa Aktif Nilai Keterangan

SIMPATI 1 Hari 60 Cepat

2 Hari 60 Cepat

7 Hari 80 Sedang

7 Hari 80 Sedang

7 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

AS 1 Hari 60 Cepat

1 Hari 60 Cepat

2 Hari 60 Cepat

7 Hari 80 Sedang

7 Hari 80 Sedang

7 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

INDOSAT 1 Hari 60 Cepat

1 Hari 60 Cepat

7 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

3++ mengikuti masa

aktif kartu

100 Lama

3 Kendo 100 Lama

3 Reguler 30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

XL Hotrod 1 Hari 60 Cepat

1 Hari 60 Cepat


(30)

Tabel 3.3. Kriteria masa aktif (lanjutan)

Provider Masa Aktif Nilai Keterangan

XL Hotrod 30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

XL Hotrod 4G 30 Hari 80 Sedang

30 Hari 80 Sedang

30 Hari 80 Sedang

3.4.4. Kriteria jaringan

Kriteria jaringan dibagi menjadi 2, yaitu: bernilai 70 jika biasa (3G) dan bernilai 100 jika cepat (4G).

Tabel 3.4. Kriteria jaringan

Provider Jaringan Nilai Keterangan

SIMPATI 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

AS 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

INDOSAT 3.5G 70 Biasa

3.5G 70 Biasa


(31)

Tabel 3.4. Kriteria jaringan (lanjutan)

Provider Jaringan Nilai Keterangan

INDOSAT 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3++ 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3 Kendo 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3 Reguler 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

XL Hotrod 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

XL Hotrod 4G 3.5G 70 Biasa

3.5G 70 Biasa

3.5G 70 Biasa

4G 100 Cepat

4G 100 Cepat


(32)

3.5Analisis Proses

3.5.1. Analisis proses penyelesaian masalah dengan Metode SMART

Langkah pertama yang dilakukan adalah menentukan kriteria dan bobot kriteria. Tabel 3.5. Bobot Penilaian

No. Kriteria Bobot

1. Kuota 100

2. Harga 100

3. Masa Aktif 100

4. Jaringan 100

Jumlah 400

Langkah kedua yang dilakukan adalah membuat bobot pada tabel 3.5 menjadi bobot relatif.

Tabel 3.6. Bobot Relatif

No. Kriteria Bobot Bobot Relatif (wj)

1. Kuota 100/400 0,25

2. Harga 100/400 0,25

3. Masa Aktif 100/400 0,25

4. Jaringan 100/400 0,25

Contoh kasus menggunakan Metode SMART ini, akan membandingkan produk dari setiap provider GSM dengan kuota 1.8GB sampai dengan 2GB (seperti: Simpati 2GB, As 1.8GB, Indosat 2GB, Xl Hotrod 2GB, 3 Reguler 2GB dan 3++ 2GB), kuota 500MB sampai dengan 600MB (seperti: Simpati 600MB, As 500 MB, 3 Kendo 500 MB, 3 Reguler 500MB, Xl Hotrod 500 MB dan Xl Hotrod 600 MB) dan kuota 3.5GB sampai dengan 4.5GB (seperti: Simpati 4.5GB, As 3.5GB, Indosat 4.5GB, 3++ 4.25GB, Xl Hotrod 4.5GB dan Xl Hotrod 4G 3.5GB) dengan kriteria harga, masa aktif dan jaringan yang berbeda-beda. Yang kemudian masing-masing paket internet tersebut akan dievaluasi dan diberikan sebagaimana pada Tabel 3.7.

Tabel 3.7. Evaluasi Faktor dengan kuota 1.8GB - 2GB Faktor Kuota Harga Masa Aktif Jaringan

Simpati 2GB 60 20 80 70

As 1.8GB 60 20 80 70

Indosat 2GB 60 80 80 70

Xl Hotrod 2GB 60 20 80 70

3 Reguler 2GB 60 20 80 70


(33)

Pada tahap berikutnya total nilai evaluasi untuk masing-masing paket. Contoh pada Tabel 3.7 menunjukan hasil penilaian dimana untuk masing-masing paket tersebut diberikan bobot terhadap faktor-faktor penting yang telah ditentukan sebagaimana diberikan pada tabel 3.5 dan 3.6. Pada Tabel 3.8 di bawah ini terlihat Paket Simpati 2GB memiliki total bobot evaluasi sebesar 57,5. Dimana bobot evaluasi ini merupakan perkalian dari evaluasi faktor dengan bobot faktornya.

Tabel 3.8. Evaluasi Faktor Paket Simpati 2GB Faktor Simpati 2GB Bobot

Faktor

Bobot Evaluasi

Kuota 60 0,25 15

Harga 20 0,25 5

Masa Aktif 80 0,25 20

Jaringan 70 0,25 17.5

Total 230 1 57,5

Pada Tabel 3.9 di bawah ini, bobot evaluasi ini merupakan perkalian dari evaluasi faktor dengan bobot faktornya.

Tabel 3.9. Evaluasi Faktor Paket As 1.8GB Faktor As 1.8GB Bobot

Faktor

Bobot Evaluasi

Kuota 60 0,25 15

Harga 20 0,25 5

Masa Aktif 80 0,25 20

Jaringan 70 0,25 17.5

Total 230 1 57,5

Dengan cara yang sama seperti pada tabel 3.8, tabel 3.9 menunjukan bahwa untuk paket dengan nama paket As 1.8 GB memiliki total bobot evaluasi sebesar 57,5 yang berarti sama dengan paket Simpati 2GB. Pada Tabel 3.10 berikut ini, sama seperti pada tabel 3.8 tabel 3.9 perkalian dari evaluasi faktor dengan bobot faktornya.

Tabel 3.10. Evaluasi Faktor Paket Indosat 2GB Faktor Indosat 2GB Bobot

Faktor

Bobot Evaluasi

Kuota 60 0,25 15

Harga 80 0,25 20

Masa Aktif 80 0,25 20

Jaringan 70 0,25 17.5


(34)

Dari Tabel 3.10 diketahui bahwa untuk paket Indosat 2GB memiliki total bobot evaluasi sebesar 72,5 yang berarti lebih besar dari paket Simpati 2GB dan As 1.8 GB.

Tabel 3.11. Evaluasi Faktor Paket Xl Hotrod 2GB Faktor Xl Hotrod 2GB Bobot

Faktor

Bobot Evaluasi

Kuota 60 0,25 15

Harga 20 0,25 5

Masa Aktif 80 0,25 20

Jaringan 70 0,25 17.5

Total 230 1 57,5

Dari Tabel 3.11 diketahui bahwa untuk paket Xl Hotrod 2GB memiliki total bobot evaluasi sebesar 57,5 yang berarti sama dengan Simpati 2GB dan As 1.8 GB.

Tabel 3.12. Evaluasi Faktor Paket 3 Reguler 2GB Faktor 3 Reguler 2GB Bobot

Faktor

Bobot Evaluasi

Kuota 60 0,25 15

Harga 20 0,25 5

Masa Aktif 80 0,25 20

Jaringan 70 0,25 17.5

Total 230 1 57,5

Dari Tabel 3.12 diketahui bahwa untuk paket 3 Reguler 2GB memiliki total bobot evaluasi sebesar 57,5 yang berarti sama dengan Xl Hotrod 2GB, Simpati 2GB dan As 1.8 GB. Sedangkan paket 3++ 2GB memiliki total bobot evaluasi sebesar 77,5 sebagaimana pada Tabel 3.13.

Tabel 3.13. Evaluasi Faktor Paket 3++ 2GB Faktor 3 Reguler 2GB Bobot

Faktor

Bobot Evaluasi

Kuota 60 0,25 15

Harga 80 0,25 20

Masa Aktif 100 0,25 25

Jaringan 70 0,25 17.5


(35)

Dari evaluasi yang telah dilakukan, hasil kesimpulan adalah sebagai berikut:

Tabel 3.14. Hasil Kesimpulan Evaluasi Faktor dan Bobot untuk kuota 1.8GB - 2GB Faktor Bobot

Evaluasi Simpati 2GB Bobot Evaluasi As 1.8GB Bobot Evaluasi Indosat 2GB Bobot Evaluasi Xl Hotrod 2GB Bobot Evaluasi 3 Reguler 2GB Bobot Evaluasi 3++ 2GB

Kuota 15 15 15 15 15 15

Harga 5 5 20 5 5 20

Masa Aktif 20 20 20 20 20 25

Jaringan 17.5 17.5 17.5 17.5 17.5 17.5

Total 57,5 57,5 72,5 57,5 57,5 77,5

Dari range nilai di atas terlihat bahwa hasil penilaian Paket 3++ 2 GB lebih tinggi daripada paket lainnya sehingga dapat dinyatakan Paket 3++ 2GB yang akan digunakan.

Dengan langkah yang sama, dilakukan evaluasi faktor untuk kuota 500MB sampai dengan 600MB dan diberikan sebagaimana pada Tabel 3.15.

Tabel 3.15. Evaluasi faktor untuk kuota 500MB - 600MB Faktor Kuota Harga Masa Aktif Jaringan

Simpati 600MB 40 80 80 70

As 500 MB 20 80 60 70

3 Kendo 500 MB 20 100 80 70

3 Reguler 500MB 40 80 80 70

Xl Hotrod 500 MB 20 80 80 70

Xl Hotrod 600 MB 20 100 100 70

Dari evaluasi yang telah dilakukan, diperoleh hasil kesimpulan adalah sebagai berikut: Tabel 3.16. Hasil Kesimpulan Evaluasi Faktor dan Bobot untuk kuota 500MB - 600MB Faktor Bobot

Evaluasi Simpati 600MB Bobot Evaluasi As 500 MB Bobot Evaluasi 3 Kendo 500 MB Bobot Evaluasi 3 Reguler 500MB Bobot Evaluasi Xl Hotrod 500 MB Bobot Evaluasi Xl Hotrod 600 MB

Kuota 10 5 5 5 5 10

Harga 20 20 25 20 25 20

Masa Aktif 20 15 25 20 20 20

Jaringan 17.5 17.5 17.5 17.5 17.5 17.5

Total 67,5 57,5 72,5 62,5 67,5 67,5

Dari range nilai di atas terlihat bahwa hasil penilaian Paket 3 Kendo 500 MB lebih tinggi daripada paket lainnya sehingga dapat dinyatakan Paket 3 Kendo 500 MB yang akan


(36)

digunakan. Dengan langkah yang sama, dilakukan evaluasi faktor untuk kuota 3.5GB sampai dengan 4.5GB dan diberikan sebagaimana pada Tabel 3.17.

Tabel 3.17. Evaluasi faktor untuk kuota 3.5GB - 4.5GB

Faktor Kuota Harga Masa Aktif Jaringan

Simpati 4.5GB 60 40 80 70

As 3.5GB 60 40 80 70

Indosat 4.5GB 60 80 80 70

3++ 4.25GB 60 100 80 70

Xl Hotrod 4.5GB 60 20 80 100

Xl Hotrod 4G 3.5GB 60 20 100 70

Dari evaluasi yang telah dilakukan, diperoleh hasil kesimpulan adalah sebagai berikut: Tabel 3.18. Hasil Kesimpulan Evaluasi Faktor dan Bobot untuk kuota 3.5GB - 4.5GB Faktor Bobot

Evaluasi Simpati 4.5GB Bobot Evaluasi As 3.5GB Bobot Evaluasi Indosat 4.5GB Bobot Evaluasi 3++ 4.25GB Bobot Evaluasi Xl Hotrod 4.5GB Bobot Evaluasi Xl Hotrod 4G 3.5GB

Kuota 15 15 15 15 15 15

Harga 10 10 20 5 25 5

Masa Aktif 20 20 20 25 20 20

Jaringan 17.5 17.5 17.5 17.5 17.5 25

Total 62,5 57,5 72,5 62,5 77,5 65

Dari range nilai di atas terlihat bahwa hasil penilaian Paket Xl hotrod 4.5 GB lebih tinggi daripada paket lainnya sehingga dapat dinyatakan Paket Xl hotrod 4.5 GB yang akan digunakan.

3.5.2. Analisis proses penyelesaian masalah dengan Metode Weighted Product Langkah pertama yang dilakukan adalah menentukan nilai dan bobot kriteria

Tabel 3.19. Nilai dan Bobot Kriteria

No. Kriteria Kriteria Nilai Bobot

1. Kuota A1 100 0,25

2. Harga A2 100 0,25

3. Masa Aktif A3 100 0,25

4. Jaringan A4 100 0,25

w = 0,25 + 0,25 + 0,25 + 0,25 = 1 Kriteria Keuntungan : Kuota (A1), Masa Aktif (A3), Jaringan (A4). Kriteria Biaya : Harga (A2).


(37)

Tabel 3.20. Alternatif Alternatif Paket Kriteria

A1 A2 A3 A4

Simpati 2GB 60 20 80 70

As 1.8GB 60 20 80 70

Indosat 2GB 60 80 80 70

Xl Hotrod 2GB 60 20 80 70

3 Reguler 2GB 60 20 80 70

3++ 2GB 60 80 100 70

Simpati 600MB 40 80 80 70

As 500 MB 20 80 60 70

3 Kendo 500 MB 20 100 80 70

3 Reguler 500MB 40 80 80 70

Xl Hotrod 500 MB 20 80 80 70

Xl Hotrod 600 MB 20 100 100 70

Simpati 4.5GB 60 40 80 70

As 3.5GB 60 40 80 70

Indosat 4.5GB 60 80 80 70

3++ 4.25GB 60 100 80 70

Xl Hotrod 4.5GB 60 20 80 100

Xl Hotrod 4G 3.5GB 60 20 100 70 Perhitungan Vektor S

Perhitungan Vektor S Simpati 2GB

S1 = (600,25) . (200,25) . (800,25) . (700,25) = 50,932 Perhitungan Vektor S As 1.8GB

S1 = (600,25) . (200,25) . (800,25) . (700,25) = 50,932 Perhitungan Vektor S Indosat 2GB

S1 = (600,25) . (800,25) . (800,25) . (700,25) = 72,027 Perhitungan Vektor S Xl Hotrod 2GB

S1 = (600,25) . (200,25) . (800,25) . (700,25) = 50,932 Perhitungan Vektor S 3 Reguler 2GB

S1 = (600,25) . (200,25) . (800,25) . (700,25) = 50,932 Perhitungan Vektor S 3++ 2GB

S1 = (600,25) . (800,25) . (1000,25) . (700,25) = 76,145

Perhitungan Vektor S Simpati 600MB


(38)

Perhitungan Vektor S As 500 MB

S1 = (200,25) . (800,25) . (600,25) . (700,25) = 50,915 Perhitungan Vektor S Xl Hotrod 500 MB

S1 = (200,25) . (1000,25) . (800,25) . (700,25) = 57,850 Perhitungan Vektor S Xl Hotrod 600 MB

S1 = (400,25) . (800,25) . (800,25) . (700,25) = 65,063 Perhitungan Vektor S 3 Reguler 500MB

S1 = (200,25) . (800,25) . (800,25) . (700,25) = 54,711 Perhitungan Vektor S 3 Kendo 500 MB

S1 = (200,25) . (1000,25) . (1000,25) . (700,25) = 61,169

Perhitungan Vektor S Simpati 4.5GB

S1 = (600,25) . (400,25) . (800,25) . (700,25) = 60,548 Perhitungan Vektor S As 3.5GB

S1 = (600,25) . (400,25) . (800,25) . (700,25) = 60,548 Perhitungan Vektor S Indosat 4.5GB

S1 = (600,25) . (800,25) . (800,25) . (700,25) = 72,004 Perhitungan Vektor S Xl Hotrod 4.5GB

S1 = (600,25) . (1000,25) . (800,25) . (700,25) = 76,135 Perhitungan Vektor S Xl Hotrod 4G 3.5GB S1 = (600,25) . (200,25) . (800,25) . (1000,25) = 55,663 Perhitungan Vektor S 3++ 4.25GB

S1 = (600,25) . (200,25) . (1000,25) . (700,25) = 53,836

Perhitungan Vektor V

Nilai Vektor V Pada Simpati 2GB

Nilai Vektor V Pada As 1.8GB

Nilai Vektor V Pada Indosat 2GB


(39)

Nilai Vektor V Pada Xl Hotrod 2GB

Nilai Vektor V Pada 3 Reguler 2GB

Nilai Vektor V Pada 3++ 2GB

Dari range nilai di atas terlihat bahwa hasil penilaian Paket 3++ 2 GB lebih tinggi daripada paket lainnya sehingga dapat dinyatakan Paket 3++ 2GB yang akan digunakan. Nilai Vektor V Pada Simpati 600MB

Nilai Vektor V Pada As 500 MB

Nilai Vektor V Pada Xl Hotrod 500 MB

Nilai Vektor V Pada Xl Hotrod 600 MB

Nilai Vektor V Pada 3 Reguler 500MB

Nilai Vektor V Pada 3 Kendo 500 MB

Dari range nilai di atas terlihat bahwa hasil penilaian Paket Simpati 600MB dan Paket Xl Hotrod 600 MB memiliki bobot/nilai yang sama yaitu: 0,183 dan lebih tinggi daripada paket lainnya.


(40)

Nilai Vektor V Pada Simpati 4.5GB

Nilai Vektor V Pada As 3.5GB

Nilai Vektor V Pada Indosat 4.5GB

Nilai Vektor V Pada Xl Hotrod 4.5GB

Nilai Vektor V Pada Xl Hotrod 4G 3.5GB

Nilai Vektor V Pada 3++ 4.25GB

Dari range nilai di atas terlihat bahwa hasil penilaian Paket Xl Hotrod 4.5GB lebih tinggi daripada paket lainnya sehingga dapat dinyatakan Paket Xl Hotrod 4.5GB yang akan digunakan.

3.6Pemodelan

Setelah tahapan analisis selesai, maka usulan kebutuhan sistem harus diterjemahkan menjadi sistem informasi berbasis komputer. Harus ada beberapa langkah yang digunakan untuk mempermudah dan menjamin perangkat lunak yang dihasilkan berkualitas. Langkah awal desain biasanya dimulai dengan pemodelan sistem. Model digunakan untuk menyederhanakan cara mengomunikasikan proses-proses yang harus dilakukan sistem dengan cara formal antar pengembangan sistem informasi.

Pada penelitian ini menggunakan UML (Unified Modeling Language) untuk merancang model sebuah sistem yang akan dibangun. UML yang digunakan antara lain use case diagram, activity diagram dan sequence diagram.


(41)

3.6.1Use Case Diagram

Dalam konteks UML, tahap konseptualisasi dilakukan dengan pembuatan use case diagram yang sesungguhnya merupakan deskripsi peringkat tinggi bagaimana perangkat lunak (aplikasi) akan digunakan oleh penggunamya. Selanjutnya, use case diagram tidak hanya sangat penting pada tahap analisis, tetapi juga sangat penting untuk perancangan (design), untuk mencari kelas-kelas yang terlibat dalam aplikasi, dan untuk melakukan pengujian (testing).

Gambar 3.2 Use Case Diagram

Dari gambar 3.2 dijelaskan bahwa user dapat melihat, menginput, mengubah dan menghapus data untuk memilih paket sesuai yang dibutuhkan. Kemudian data dari pemilihan paket tersebut diproses dengan perhitungan metode SMART dan metode WP. Untuk lebih jelasnya dapat dilihat pada tabel 3.1


(42)

Tabel 3.21 Deskripsi Use Case Pilih Paket

Name Pilih Paket

Actors User

Description Use case ini mendeskripsikan untuk memilih paket yang sesuai

dengan kebutuhan user

Basic Flow User memilih paket yang sesuai dengan kebutuhan dan setelah

memilih paket, user dapat mengubah dan menghapus paket jika dianggap tidak sesuai. Sehingga dapat diproses ke tahap selanjutnya.

Pre Condition User ingin memilih paket

Post Condition Paket yang diinputkan telah tersimpan ke database

Tabel 3.22 Deskripsi Use Case Metode SMART

Name Metode SMART

Actors User

Description Use case ini mendeskripsikan untuk perhitungan data dengan metode

SMART berdasarkan bobot yang telah ditentukan

Basic Flow User memilih paket, dimana paket tersebut merupakan data yang akan

dihitung untuk proses selanjutnya.

Pre Condition Perhitungan data dengan menggunakan metode SMART

Post Condition Hasil dari perhitungan dengan menggunakan metode SMART

Tabel 3.23 Deskripsi Use Case Metode WP

Name Metode WP

Actors User

Description Use case ini mendeskripsikan untuk perhitungan data dengan metode

Weighted Product berdasarkan bobot yang telah ditentukan

Basic Flow User memilih paket, dimana paket tersebut merupakan data yang akan

dihitung untuk proses selanjutnya.

Pre Condition Perhitungan data dengan menggunakan metode Weighted Product

Post Condition Hasil dari perhitungan dengan menggunakan metode Weighted


(43)

Tabel 3.24 Deskripsi Use Case Kesimpulan

Name Kesimpulan

Actors User

Description Use case ini mendeskripsikan hasil perhitungan menggunakan

metode SMART dan Weighted Product berdasarkan data paket internet yang telah diinputkan sebelumnya dan bobot yang telah ditentukan.

Basic Flow Setelah data yang diperlukan telah diinputkan oleh User, selanjutnya data dihitung dengan SMART dan Weighted Product

Pre Condition User ingin mengetahui hasil perhitungan

Post Condition User dapat mengetahui paket internet yang sesuai dengan kriteria yang diinginkan

3.6.2Activity Diagram

Use case diagram merupakan gambaran menyeluruh dan pada umumnya sangatlah tidak terperinci. Oleh karena itu, penelitian ini menggunakan activity diagram agar bisa mendapatkan gambaran yang lebih menyeluruh. Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir.

Gambar 3.3 Activity Diagram Pilih Paket

Pada gambar 3.3 menjelaskan bahwa ketika user memilih paket, maka sistem akan menampilkan beberapa data atau pilihan paket kepada user untuk dipilih sesuai dengan


(44)

kebutuhan. Setelah memilih paket, user dapat menghapus dan mengubah data tesebut dan data akan tersimpan ke database.

Gambar 3.4 Activity Diagram Metode SMART

Pada gambar 3.4 menjelaskan bahwa ketika user memilih metode SMART untuk perhitungan, maka sistem akan menampilkan form metode SMART, dan user diminta untuk menginputkan bobot setiap kriteria sehingga didapat hasil dari perhitungan dengan metode SMART dan hasil tersebut akan tersimpan ke dalam database.


(45)

Pada gambar 3.5 menjelaskan bahwa ketika user memilih metode WP untuk perhitungan, maka sistem akan menampilkan form metode WP, dan user diminta menginputkan bobot setiap kriteria untuk dilakukan normalisasi bobot sehingga didapat hasil dari perhitungan dengan metode WP dan hasil tersebut akan tersimpan ke dalam database.

Gambar 3.6 Activity Diagram Kesimpulan

Pada gambar 3.6 menjelaskan bahwa ketika user memilih menu kesimpulan, maka sistem akan menampilkan hasil perhitungan dari metode SMART dan metode WP.

3.6.3Sequence Diagram

Sequence diagram menjelaskan secara detail urutan proses yang dilakukan dalam sistem untuk mencapai tujuan dari use case, interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan antar operasi, dan informasi yang diperlukan oleh masing-masing operasi.


(46)

Gambar 3.7 Sequence Diagram Pilih Paket

Pada gambar 3.7 menjelaskan bahwa ketika user memilih paket maka sistem akan merespon dengan menampilkan form dan menyimpannya ke database.


(47)

Gambar 3.8 Sequence Diagram Metode SMART

Pada gambar 3.8 menjelaskan bahwa ketika user memilih menu metode SMART, maka sistem akan merespon dengan menampilkan form, dan user menginputkan bobot untuk mendapatkan bobot relatif dan sistem akan menyimpan hasil perhitungan ke database dan menampilkan hasilnya ke user.


(48)

Pada gambar 3.9 menjelaskan bahwa ketika user memilih menu metode WP, maka sistem akan merespon dengan menampilkan form, user menginputkan nilai untuk proses normalisasi bobot dan sistem akan menyimpan hasil perhitungan ke database. Hasil perhitungan akan ditampilkan oleh sistem.

Gambar 3.10 Sequence Diagram Kesimpulan

Pada gambar 3.10 menjelaskan bahwa pada menu kesimpulan, sistem akan menampilkan hasil perhitungan metode SMART dan metode WP.


(49)

3.6.4Flowchart SMART

Gambar 3.11 Flowchart Metode SMART

Perhitungan metode SMART dapat dilakukan dengan menginputkan nilai kriteria untuk setiap kriteria dan bobot. Lalu selanjutnya dilakukan normalisasi bobot. Lalu input nilai kriteria untuk setiap alternatif. Lalu hitung nilai utility untuk setiap kriteria dan nilai akhir hingga diperoleh hasil keputusan.

START

Input nilai kriteria utk setiap, Jumlah

kriteria dan bobot

� ∑

Normalisasi bobot

� �

Hitung nilai utility untuk setiap kriteria

Hitung nilai akhir

Max � �

FINISH Hasil Keputusan


(50)

3.6.5Flowchart Weighted Product

Gambar 3.12 Flowchart Metode WP

Perhitungan metode WP dapat dilakukan dengan menginputkan data nilai kriteria dan alternatif dan hitung bobot setiap kriteria. Lalu selanjutnya pangkatkan matriks keputusan terhadap bobot atribut. Dan terakhir preferensi relatif dari setiap relatif hingga diperoleh hasil keputusan.

START

Data nilai kriteria dan

alternatif

Hitung bobot setiap kriteria

� � �

Pangkatkan matriks keputusan terhadap

bobot atribut

� ∏� � �

∏ (�� )

Preferensi relatif dari setiap alternatif

FINISH Hasil keputusan


(51)

3.7Perancangan Sistem

Perancangan sistem adalah proses pengembangan spesifikasi sistem baru berdasarkan hasil rekomendasi analisis sistem. Dalam tahap perancangan, harus merancang spesifikasi yang dibutuhkan dalam sistem. Tujuan tahap perancangan sistem adalah untuk memenuhi kebutuhan pemakai sistem dan memberikan gambaran yang jelas dan rancang bangun yang lengkap untuk pemrogram.

3.7.1.Rancangan Menu Pilih Paket


(52)

Keterangan:

Tabel 3.25 Keterangan Rancangan Menu Pemilihan Paket

No Jenis Objek Keterangan

1 Menu Strip Menu pemilihan operator 2 Datagridview1 Data yang telah diinputkan user 3 Button refresh Tombol untuk refresh data

4 Button hapus semua data Tombol untuk menghapus semua data 5 Button convert Tombol untuk normalisasi data 6 Datagridview2 Data yang sudah dinormalisasikan

7 Button simpan data Tombol untuk menyimpan data ke database

3.7.2.Rancangan Menu Metode SMART


(53)

Keterangan:

Tabel 3.26 Keterangan Rancangan Menu Metode SMART

No Jenis Objek Keterangan

1 Textbox kuota User mengisi bobot kuota

2 Textbox harga User mengisi bobot harga

3 Textbox masa aktif User mengisi bobot masa aktif

4 Textbox jaringan User mengisi bobot jaringan

5 Button proses Tombol untuk memproses data yang telah diinputkan

6 Label bobot Label untuk menampilkan nilai bobot yang

diinputkan oleh user dan total bobot

7 Label bobot relatif Label untuk menampilkan nilai bobot relative

8 Datagridview1 Untuk mengambil data normalisasi dari database

9 Datagridview2 Untuk menampilkan nilai bobot evaluasi untuk setiap

alternatif dan masing-masing kriterianya

10 Datagridview3 Untuk menampilkan urutan total nilai bobot evaluasi

3.7.3.Rancangan Menu Metode WP


(54)

Keterangan:

Tabel 3.27 Keterangan Rancangan Menu Metode WP

No Jenis Objek Keterangan

1 Textbox kuota User mengisi bobot kuota

2 Textbox harga User mengisi bobot harga

3 Textbox masa aktif User mengisi bobot masa aktif

4 Textbox jaringan User mengisi bobot jaringan

5 Button proses Tombol untuk memproses data yang telah diinputkan

6 Label bobot awal Label untuk menampilkan bobot awal yang

diinputkan oleh user dan total bobot 7 Label nilai bobot Label untuk menampilkan nilai bobot

8 Datagridview1 Untuk mengambil data normalisasi dari database

9 Datagridview2 Untuk menampilkan hasil perhitungan Vektor S

untuk setiap alternatif dan masing-masing kriterianya 10 Datagridview3 Untuk menampilkan urutan hasil perhitungan Vektor

V

3.7.4.Rancangan Menu Kesimpulan

Gambar 3.16 Rancangan Menu Kesimpulan Keterangan:

Tabel 3.28 Keterangan Rancangan Menu Kesimpulan

No Jenis Objek Keterangan

1 Datagridview1 Untuk menampilkan hasil perhitungan SMART

2 Datagridview2 Untuk menampilkan hasil perhitungan WP

3 Label 1 Menampilkan total waktu metode SMART

4 Label 2 Menampilkan total waktu metode WP


(55)

3.8Kamus Data

Kamus data merupakan daftar semua elemen/field. 1. Tabel Picked

Tabel 3.29 Tabel Picked No. Field Tipe Data Keterangan

1. nama varchar(30) Digunakan untuk menampung nama provider GSM yang dipilih

2. kuota int(11) Digunakan untuk menampung kuota provider GSM yang dipilih

3. harga int(11) Digunakan untuk menampung harga provider GSM yang dipilih

4. masaaktif int(6) Digunakan untuk menampung masa aktif provider GSM yang dipilih

5. jaringan varchar(5) Digunakan untuk menampung jaringan provider GSM yang dipilih

2. Tabel SPK

Tabel 3.30 Tabel SPK No. Field Tipe Data Keterangan

1. id Int(11) Digunakan untuk menampung angka yg telah terurut otamatis yang dijadikan sebagai primary key

2. nama varchar(30) Digunakan untuk menampung nama provider GSM yang dipilih

3. kuota int(11) Digunakan untuk menampung bobot kuota provider GSM yang dipilih

4. harga int(11) Digunakan untuk menampung bobot harga provider GSM yang dipilih

5. masaaktif int(6) Digunakan untuk menampung bobot masa aktif provider GSM yang dipilih

6. jaringan varchar(5) Digunakan untuk menampung bobot jaringan provider GSM yang dipilih

3. Tabel SMART

Tabel 3.31 Tabel SMART No. Field Tipe Data Keterangan

1. id varchar(30) Digunakan untuk menampung nama provider GSM yang dipilih yang disesuaikan dengan paket

2. total double Digunakan untuk menampung total dari hasil perhitungan SMART


(56)

4.Tabel WP

Tabel 3.32 Tabel WP No. Field Tipe Data Keterangan

1. id varchar(30) Digunakan untuk menampung nama provider GSM yang dipilih yang disesuaikan dengan paket 2. total double Digunakan untuk menampung total dari hasil

perhitungan Weighted Product 5. Tabel Waktu

Tabel 3.33 Tabel Waktu No. Field Tipe Data Keterangan

1. id varchar(10) Digunakan untuk menampung nama metode yang telah digunakan

2. waktu double Digunakan untuk menampung waktu untuk setiap metode


(57)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1. Implementasi Sistem

Implementasi sistem merupakan kegiatan akhir dari proses penerapan sistem baru di mana sistem yang baru ini akan dioperasikan secara menyeluruh. Terhadap sistem yang baru itu sudah harus dilakukan proses analisis dan desain secara terinci. Implementasi sistem ini dibangun menggunakan bahasa pemrograman C# dan Database Management System Mysql.

4.1.1.Halaman Utama

Merupakan tampilan awal saat user mulai menjalankan aplikasi. Menu yang terdapat pada sistem adalah pilih paket, metode, dan help.


(58)

(59)

4.1.2.Menu Pilih Paket

Merupakan form untuk menampilkan data berupa nama paket, kuota, harga, masa aktif dan jairngan berdasarkan pilihan paket sesuai dengan kebutuhan user. Button convert untuk proses normalisasi data, yang hasilnya ditampilkan pada datagridview. Button simpan data untuk menyimpan data yang sudah dinormalisasi ke database.

Gambar 4.2 Menu Pilih Paket

4.1.3.Menu Metode SMART

Pada menu ini user menginputkan bobot untuk kuota, harga, masa aktif dan jaringan dengan interval 1-100. Lalu Button proses untuk memproses data tersebut dengan perhitungan metode SMART dan hasilnya akan ditampilkan ke datagridview.


(60)

Gambar 4.3 Menu Metode SMART

4.1.4.Menu Metode WP

Pada menu ini user menginputkan bobot untuk kuota, harga, masa aktif dan jaringan dengan interval 1-100. Lalu Button proses untuk memproses data tersebut dengan perhitungan metode WP dan hasilnya akan ditampilkan ke datagridview.


(61)

Gambar 4.4 Menu Metode WP

4.2. Pengujian Sistem

Pengujian sistem dilakukan untuk menghindari kesalahan pada program yang dibuat dan untuk mengetahui apakah sistem berfungsi sesuai dengan yang diharapkan. Pada penelitian ini, dapat dilihat hasil perhitungan data dengan menggunakan metode SMART dan metode WP.


(62)

Gambar 4.5 Menu Kesimpulan untuk Kuota 1.8GB – 2GB

Pada gambar 4.5 dapat dilihat bahwa pada percobaan pertama, hasil perhitungan kedua metode sesuai dengan perhitungan manual dan waktu eksekusi metode Weighted Product lebih cepat dibandingkan dengan waktu eksekusi metode SMART.


(63)

Pada gambar 4.6 dapat dilihat bahwa pada percobaan kedua, hasil perhitungan kedua metode sesuai dengan perhitungan manual dan waktu eksekusi metode SMART lebih cepat dibandingkan dengan waktu eksekusi metode Weighted Product.

Gambar 4.7 Menu Kesimpulan untuk Kuota 3.5GB – 4.5GB

Pada gambar 4.7 dapat dilihat bahwa pada percobaan ketiga, hasil perhitungan kedua metode sesuai dengan perhitungan manual dan waktu eksekusi metode Weighted Product lebih cepat dibandingkan dengan waktu eksekusi metode SMART.


(1)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel xi

Daftar Gambar xii

Daftar Lampiran xiii

Bab I Pendahuluan

1.1. Latar Belakang 1

1.2. Rumusan Masalah 2

1.3. Batasan / Ruang Lingkup Penelitian 2

1.4. Tujuan Penelitian 3

1.5. Manfaat Penelitian 3

1.6. Metode Penelitian 3

1.7. Sistematika Penulisan 4

Bab II Tinjauan Pustaka

2.1. Internet 6

2.1.1. Fungsi Internet 6

2.1.2. Paket Internet 8

2.2. Internet Protocol (IP) 12

2.3. Sistem Pendukung Keputusan 12

2.3.1. Pengertian Sistem Pendukung Keputusan 12 2.3.2. Komponen Sistem Pendukung Keputusan 13

2.4. Metode SMART 14


(2)

2.4.1. Langkah-langkah perhitungan Metode SMART 14

2.5. Metode Weighted Product 15

2.5.1. Langkah-langkah perhitungan Metode Weighted Product 16

2.6. Database 16

Bab III Analisis dan Perancangan Sistem

3.1. Analisis Sistem 17

3.2. Analisis Masalah 17

3.3. Analisis Persyaratan Sistem 18

3.3.1. Analisis Persyaratan Fungsional 18

3.3.2. Analisis Persyaratan Non-Fungsional 19

3.4. Analisis Kriteria 19

3.4.1. Kriteria quota 19

3.4.2. Kriteria harga 21

3.4.3. Kriteria masa aktif 23

3.4.4. Kriteria jaringan 24

3.5. Analisis Proses 26

3.5.1. Analisis proses penyelesaian masalah metode SMART 26 3.5.2. Analisis proses penyelesaian masalah metode WP 30

3.6. Pemodelan 34

3.6.1. Use case diagram 35

3.6.2. Activity diagram 37

3.6.3. Sequence diagram 39

3.6.4. Flowchart SMART 43

3.6.5. Flowchart WP 44

3.7. Perancangan Sistem 45

3.7.1. Rancangan Menu Pilih Paket 45

3.7.2. Rancangan Menu Metode SMART 46

3.7.3. Rancangan Menu Metode WP 47

3.7.4. Rancangan Menu Kesimpulan 48

3.7. Kamus Data 49


(3)

Bab IV Implementasi dan Pengujian Sistem

4.1. Implementasi Sistem 51

4.1.1. Halaman Utama 51

4.1.2. Menu Pilih Paket 53

4.1.3. Menu Metode SMART 53

4.1.4. Menu Metode WP 54

4.2. Pengujian Sistem 55

Bab V Kesimpulan dan Saran

5.1. Kesimpulan 58

5.2. Saran 59

Daftar Pustaka 60


(4)

DAFTAR TABEL

Halaman

Tabel 2.1. Daftar Tarif akses internet yang diberlakukan oleh Simpati 9

Tabel 2.2. Daftar Tarif akses internet yang diberlakukan oleh As 9 Tabel 2.3. Daftar Tarif akses internet yang diberlakukan oleh Indosat 10

Tabel 2.4. Daftar Tarif akses internet yang diberlakukan oleh 3 10

Tabel 2.5. Daftar Tarif akses internet yang diberlakukan oleh XL 11

Tabel 3.1. Kriteria quota 19

Tabel 3.2. Kriteria harga 21

Tabel 3.3. Kriteria masa aktif 23

Tabel 3.4. Kriteria jaringan 24

Tabel 3.5. Bobot Penilaian 26

Tabel 3.6. Bobot Relatif 26

Tabel 3.7. Evaluasi Faktor untuk kuota 1.8GB – 2GB 26 Tabel 3.8. Evaluasi Faktor Paket Simpati 2GB 27

Tabel 3.9. Evaluasi Faktor Paket As 1.8GB 27

Tabel 3.10. Evaluasi Faktor Paket Indosat 2GB 27 Tabel 3.11. Evaluasi Faktor Paket Xl Hotrod 2GB 28

Tabel 3.12. Evaluasi Faktor Paket 3 Reguler 2GB 28

Tabel 3.13. Evaluasi Faktor Paket 3++ 2GB 28

Tabel 3.14. Hasil Kesimpulan Evaluasi Faktor dan Bobot untuk 29

kuota 1.8GB – 2GB Tabel 3.15. Evaluasi Faktor untuk kuota 500MB - 600MB 29 Tabel 3.16. Hasil Kesimpulan Evaluasi Faktor dan Bobot untuk 29

kuota 500MB - 600MB Tabel 3.17. Evaluasi Faktor untuk kuota 3.5GB – 4.5GB 30

Tabel 3.18. Hasil Kesimpulan Evaluasi Faktor dan Bobot untuk 30

kuota 3.5GB – 4.5GB Tabel 3.19. Nilai dan Bobot Kriteria 30 Tabel 3.20. Alternatif 31 Tabel 3.21. Deskripsi Use Case Pilih Paket 36

Tabel 3.22. Deskripsi Use Case Metode SMART 36

Tabel 3.23. Deskripsi Use Case Metode WP 36

Tabel 3.24. Deskripsi Use Case Kesimpulan 37

Tabel 3.25. Keterangan Rancangan Menu Pemilihan Paket 46 Tabel 3.26. Keterangan Rancangan Menu Metode SMART 47 Tabel 3.27. Keterangan Rancangan Menu Metode WP 48 Tabel 3.28. Keterangan Rancangan Menu Kesimpulan 48 Tabel 3.29. Tabel Picked 49

Tabel 3.30. Tabel SPK 49

Tabel 3.31. Tabel SMART 49

Tabel 3.32. Tabel WP 50

Tabel 3.33. Tabel Waktu 50


(5)

DAFTAR GAMBAR

Halaman Gambar 2.1. Komponen Utama Sistem Pendukung Keputusan 14

Gambar 3.1. Diagram Ishikawa 18

Gambar 3.2. Use Case Diagram 35

Gambar 3.3. Activity diagram Pilih Paket 37

Gambar 3.4. Activity diagram Metode SMART 38

Gambar 3.5. Activity diagram Metode WP 38

Gambar 3.6. Activity diagram Kesimpulan 39

Gambar 3.7. Sequence diagram Pilih Paket 40

Gambar 3.8. Sequence diagram Metode SMART 41

Gambar 3.9. Sequence Diagram Metode WP 41

Gambar 3.10. Sequence Diagram Kesimpulan 42

Gambar 3.11. Flowchart Metode SMART 43

Gambar 3.12. Flowchart Metode WP 44

Gambar 3.13. Rancangan Menu Pemilihan Paket 45

Gambar 3.14. Rancangan Menu Metode SMART 46

Gambar 3.15. Rancangan Menu Metode WP 47

Gambar 3.16. Rancangan Menu Kesimpulan 48

Gambar 4.1. Halaman Utama 52

Gambar 4.2. Menu Pilih Paket 53

Gambar 4.3. Menu Metode SMART 54

Gambar 4.4. Menu Metode WP 55

Gambar 4.5. Menu Kesimpulan untuk kuota 1.8GB – 2GB 56 Gambar 4.5. Menu Kesimpulan untuk kuota 500MB - 600MB 56 Gambar 4.5. Menu Kesimpulan untuk kuota 3.5GB – 4.5GB 56


(6)

DAFTAR LAMPIRAN

Halaman

A. Listing Program A-1

B. Curriculum Vitae B-1


Dokumen yang terkait

Perbandingan Metode Weighted Product dan Simple Multi-Attribute Rating Tecnique Dalam Menentukan Lahan Terbaik untuk Tanaman Karet

17 139 129

Sistem pendukung pengambilan keputusan paket wisata Manggarai Barat menggunakan metode SMART (Simple Multi Attribute Rating Technique).

4 26 234

Implementasi Metode Smart (Simple Multi Attribute Rating Technique) dan Metode WP (Weighted Product) pada Sistem Pendukung Keputusan dalam Menentukan Paket Internet

0 0 14

Implementasi Metode Smart (Simple Multi Attribute Rating Technique) dan Metode WP (Weighted Product) pada Sistem Pendukung Keputusan dalam Menentukan Paket Internet

0 0 2

Implementasi Metode Smart (Simple Multi Attribute Rating Technique) dan Metode WP (Weighted Product) pada Sistem Pendukung Keputusan dalam Menentukan Paket Internet

1 1 5

Implementasi Metode Smart (Simple Multi Attribute Rating Technique) dan Metode WP (Weighted Product) pada Sistem Pendukung Keputusan dalam Menentukan Paket Internet

0 2 3

Implementasi Metode Smart (Simple Multi Attribute Rating Technique) dan Metode WP (Weighted Product) pada Sistem Pendukung Keputusan dalam Menentukan Paket Internet

0 0 19

BAB 2 TINJAUAN PUSTAKA 2.1 Internet - Implementasi Metode Smart (Simple Multi Attribute Rating Technique) dan Metode WP (Weighted Product) pada Sistem Pendukung Keputusan dalam Menentukan Paket Internet

0 0 11

Sistem Pendukung Keputusan Pemilihan Karyawan Teladan dengan Metode SMART (Simple Multi Attribute Rating Technique)

0 2 5

SISTEM PENDUKUNG PENGAMBILAN KEPUTUSAN PAKET WISATA MANGGARAI BARAT MENGGUNAKAN METODE SMART (SIMPLE MULTI ATTRIBUTE RATING TECHNIQUE)

0 0 232