Tutorial Laravel: Instalasi dan Persiapan Database untuk Sistem Pendukung Keputusan SAW

Dalam dunia pengembangan perangkat lunak, Sistem Pendukung Keputusan (SPK) telah menjadi alat yang penting dalam membantu pengambilan keputusan. Dalam artikel ini, saya akan membahas langkah-langkah mulai dari instalasi Laravel hingga merancang struktur database untuk aplikasi SPK menggunakan metode Simple Additive Weighting (SAW).

INSTALASI LARAVEL

Langkah pertama adalah menginstal Laravel. Pastikan kalian telah menginstal Composer di komputer kalian sebelum memulai.

  • buka terminal atau command prompt
  • ketik perintah berikut untuk membuat proyek laravel baru:
composer create-project --prefer-dist laravel/laravel spk-saw

setelah terinstal di komputer kalian silahkan buka file .env dan sesuaikan dengan konfigurasi database kalian

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=spk_wp
DB_USERNAME=root
DB_PASSWORD=

Model & Migration dari table users sudah tersedia secara default, maka tugas kita adalah membuat table kriteria, alternatif, dan nilai dari command line, jalankan command

php artisan make:model Kriteria -m

buka file migration yang baru saja di generate(folder: database/migrations) dan modifikasi menjadi

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::create('kriteria', function (Blueprint $table) {
            $table->id();
            $table->string('nama');
            $table->string('tipe'); // cost atau benefit
            $table->float('bobot');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('kriteria');
    }
};

generate modal berikutnya dengan command

php artisan make:model Alternatif -m

buka file migration yang baru saja di-generate dan modifikasi menjadi

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::create('alternatif', function (Blueprint $table) {
            $table->id();
            $table->string('nama');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('alternatif');
    }
};

generate model berikutnya dengan command

php artisan make:model Nilai -m

buka file migration yang baru saja di-generate dan modifikasi menjadi

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::create('nilai', function (Blueprint $table) {
            $table->id();
            $table->unsignedBigInteger('alternatif_id'); 
            $table->unsignedBigInteger('kriteria_id'); 
            $table->float('nilai');
            $table->timestamps();

            $table->foreign('alternatif_id')->references('id')->on('alternatif')->onDelete('cascade')->onUpdate('cascade');
            $table->foreign('kriteria_id')->references('id')->on('kriteria')->onDelete('cascade')->onUpdate('cascade');
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('nilai');
    }
};

eksekusi ketiga migration di atas yang sudah di save dengan command

php artisan migrate

setelah sukses mari kita lanjutkan modifikasi modelnya sekarang buka file Kriteria.php di dalam folder app/Models kemudian modifikasi seperti ini

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Kriteria extends Model
{
    use HasFactory;
    protected $table = 'kriteria';
    protected $fillable = ['nama','tipe','bobot'];

    public function nilai(){
        return $this->hasMany(Nilai::class,'kriteria_id','id');
    }
}

kemudian modifikasi file Alternatif.php di folder yang sama seperti ini

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Alternatif extends Model
{
    use HasFactory;
    protected $table = 'alternatif';
    protected $fillable = ['nama'];

    public function nilai(){
        return $this->hasMany(Nilai::class,'alternatif_id','id');
    }
}

kemudian modifikasi file Nilai.php di folder yang sama seperti ini 

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Nilai extends Model
{
    use HasFactory;
    protected $table = 'nilai';
    protected $fillable = ['alternatif_id', 'kriteria_id', 'nilai']; // Sesuaikan dengan kolom-kolom yang sesuai.

    public function alternatif()
    {
        return $this->belongsTo(Alternatif::class, 'alternatif_id');
    }

    public function kriteria()
    {
        return $this->belongsTo(Kriteria::class, 'kriteria_id');
    }
}

jangan lupa untuk di save.

KESIMPULAN

Dengan langkah-langkah di atas, Kalian telah berhasil menginstal Laravel dan membuat struktur database untuk aplikasi Sistem Pendukung Keputusan (SPK) berbasis metode Simple Additive Weighting (SAW). Tahap selanjutnya adalah mengimplementasikan logika bisnis dan antarmuka pengguna aplikasi SPK ini. Jangan ragu untuk menyesuaikan struktur database sesuai dengan kebutuhan proyek Kalian.

PEMROGRAMAN MUDAH

Suka dengan tulisan di Pemrograman Mudah? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!