Deskripsi Aplikasi | User Analysis | Dampak | Spesifikasi | Konsep OOP | Tipe Desain | Hasil dan Pembahasan | Hasil Implementasi | Saran | Developer | Referensi |
---|
^ kembali ke atas ^
Untuk mengatasi permasalahan yang ditemukan, kami sebagai pengembang mencoba membangun aplikasi dengan nama IPB’s Event pada platform berbasis website. Aplikasi IPB’s Event memungkinkan untuk menampilkan semua kegiatan yang diselenggarakan oleh internal IPB University baik yang diselenggarakan oleh mahasiswa maupun pihak kampus IPB University seperti lomba, webinar, seminar, dan sebagainya. Mahasiswa dapat melihat kegiatan yang akan diselenggarakan berdasarkan waktu pelaksanaanya pada beranda IPB Event. Mahasiswa juga dapat mendaftarkan diri secara langsung di aplikasi tersebut sebagai peserta. Selain itu, Organisasi di IPB dapat mendaftarkan kegiatan yang akan diselenggarakannya sebagai panitia pelaksana kegiatan agar kegiatannya dapat terlihat pada aplikasi. Aplikasi IPB’s Event juga mendukung adanya informasi kegiatan yang pendaftarannya dibuka pada hari itu.
Sebagai seorang mahasiswa IPB, saya ingin mengetahui dan mendapatkan informasi lengkap terkait event internal di IPB yang dapat saya ikuti. Supaya saya tidak ketinggalan informasi mengenai pelaksanaan event tersebut dan dapat mendaftar sebagai peserta event.
Sebagai panitia dari suatu event, saya ingin event yang kami selenggarakan dapat diikuti oleh peserta dengan tepat sasaran. Supaya mahasiswa IPB yang membutuhkan acara ini mendapatkan manfaat dari acara yang kami selenggarakan, tidak ketinggalan informasi mengenai pelaksanaan acara kami, dan dapat mendaftar menjadi peserta.
Dengan adanya aplikasi ini, informasi kegiatan dapat dikemas dan tersampaikan dengan baik sesuai dengan target sasarannya. Mahasiswa dapat memperoleh informasi kegiatan berdasarkan waktu pelaksanaan dan kategori yang diinginkan. Dengan adanya informasi kegiatan yang pendaftarannya dibuka pada hari itu mengurangi kemungkinan mahasiswa melewatkan kegiatan tersebut, hal ini menghasilkan dampak baik bagi pelaksana dan mahasiswa itu sendiri. Selain itu adanya fitur jadwal saya membantu mahasiswa agar tidak melewatkan kegiatan tersebut. Hal ini dinilai dapat mengurangi kemungkinan tidak terpenuhinya target peserta kegiatan berdasarkan ketersampaian informasi.
Berikut perangkat lunak yang digunakan untuk mengembangkan IPB's Event :
- Trello
- Github
- Figma
- draw.io
- Visual Studio Code
- Chrome
- XAMPP
Berikut spesifikasi laptop yang digunakan untuk mengembangkan IPB's Event :
- Processor: Intel Core i5-6200U CPU @ 2.30GHz 2.40
- RAM: 8.00GB
- OS: Windows 10
- Frontend : HTML, CSS
- Backend
- Programing Language : PHP
- Framework : Laravel
- Web Server : XAMPP
- DBMS : MYSQL
Encapsulation atau pengkapsulan adalah membungkus class dan menjaga propertu di dalam class tersebut supaya tidak diakses sembarangan oleh class lainnya. Encapsulation akan mempermudah dalam penggunaan suatu objek atau pembacaan kode karena informasinya sudah satu kesatuan dan tidak perlu membaca atau mengetahui secara rinci. Berikut adalah salah satu penerapan Encapsulation :
...
class homeMhsController extends Controller
{
public function detailorg($idevent){
$data = Event::find($idevent);
return view('detailorg',['event'=>$data] );
}
}
...
Inheritance atau pewarisan adalah hubungan antara objek utama yang mewariskan attribute maupun method yang dimilikinya kepada objek baru lainnya, baik itu sebagian maupun keseluruhan. Sehingga objek baru ini akan mewarisi sifat dari objek induknya. Berikut adalah salah satu penerapan Inheritance :
class Org extends Authenticatable
{
use HasFactory, Notifiable;
protected $fillable = [
'name',
'email',
'lembaga',
'password',
];
protected $hidden = [
'password',
'remember_token',
];
protected $casts = [
'email_verified_at' => 'datetime',
];
}
Model merepresentasikan struktur data dan digunakan untuk berinteraksi dengan database. Komponen model ini bertugas untuk mengolah data seperti mendapatkan data, menyimpan data, mengedit data, dan menghapus data. Berikut adalah model yang diterapkan pada sistem IPB's Event
- Model Event : Pada model ini terdapat informasi yang dibutuhkan mengenai event seperti primary key data dan hak akses data.
- Model Org : Pada model ini terdapat informasi mengenai data yang perlu dilengkapi seperti nama, email, lembaga, password yang akan dibutuhkan saat registrasi dan login sebagai organisasi, selain itu juga didefinisikan hak akses terhadap data-data tersebut.
- Model User : Pada model ini terdapat informasi user atau mahasiswa mengenai data yang diperlukan untuk registrasi dan login seperti nama, email, password dan juga terdapat hak akses terhadap data tersebut.
View merupakan User Interface dari aplikasi. View berfungsi untuk menampilkan informasi atau merepresentasikan tampilan kepada Pengguna. Laravel memiliki fungsi Blade yang digunakan untuk menampilkan View pada pengguna. Beriku adalah penerapan View pada Mahasiswa :
- Halaman Registrasi : halaman awal yang akan di tampilan untuk melakukan registrasi
- Halaman Login : halaman awal yang akan di tampilkan untuk melakukan login untuk masuk ke aplikasi.
- Halaman Home : halaman yang akan menampilkan kegiatan yang sedang membuka pendaftaran.
- Halaman Deskripsi Event : halaman yang berisi informasi dari kegiatan yang dipilih mahasiswa.
- Halaman Pendaftaran : halaman yang akan digunakan mahasiswa ketika akan mendaftar di suatu kegiatan
Berikut adalah penerapan View pada Organisasi Panitia Event
- Halaman Registrasi : halaman awal yang akan di tampilan untuk melakukan registrasi
- Halaman Login : halaman awal yang akan di tampilkan untuk melakuakn login untuk masuk ke aplikasi
- Halaman Home : halaman yang akan menampilkan kegiatan yang sedang membuka pendaftaran.
- Halaman Create Event : berisin formulir untuk membuat informasi kegiatan.
- Halaman Deskripsi Event : halaman yang berisi informasi dari kegiatan yang dipilih. Pada halaman ini User Organisasi dapat mengedit infomasi kegiatan dan dapat pula menghapus informasi kegiatan yang telah Organisasi buat.
- Halaman Edit Event : halaman yang digunakan oleh Organisasi untuk mengedit informasi dari kegiatan yang telah Organisasi buat
Controller berfungsi untuk menjebatani antara Model dengan View. Controler akan menerima dan memerespon respon yang datang dam nengubah ke dalam bentuk perintah terhadap view dan model. Berikut adalah Controller yang diterapkan:
- Auth Controller
- Event Controller
- Home Controller
- User Controller
- Organisasi Controller
Berikut adalah rancangan Use Case dari sistem yang kami kembangkan. Use Case ini terdiri dari 2 aktor yaitu Mahasiswa dan Organisasi atau Panitia Event.
Berikut adalah rancangan Activity Diagram dari sistem yang kami kembangkan. Activity Diagram yang kami buat kami bagi menjadi 2 sisi, yaitu dari sisi Mahasiswa dan sisi Organisasi.
- Mahasiswa
- Panitia Event (Organisasi)
- User melakukan request ke Controler
- Controler akan menghubungin Model untuk berinteraksi dengan Database
- Kemudian Controler akan merender Respon ke View
- Kemudian terpresentasikan pada user
Fungsi utama yang dikembangkan dari IPB's Event adalah sebagai Organisasi dapat mendaftarkan suatu kegiatannya pada aplikasi ini dan muncul pada beranda aplikasi kemudian sebagin user Mahasiswa dapat melihat dan mendaftarkan diri kegiatan yang ada di aplikasi ini.
- Create : Organisasi dapat menambahkan kegiatan yang mereka selenggarakan.
- Read : Menampilkan kegiatan yang di daftarkan Organisasi pada beranda.
- Update : Organisasi dapat mensunting informasi dari kegiatan yang mereka daftarkan.
- Delete : Organisasi dapat menghapus kegiatan yang telah mereka daftarkan.
-
Organisasi
-
Mahasiswa
- Menambahkan opsi tiket kegiaatan berbayar dan menambahkan mekanisme pembayaran
- Menambhakan fitur remainder yang terkoneksi dengan google calender atau sejenisnya
- Menambahkan list daftar event yang diikuti
Nama | NIM | Jobdesk |
---|---|---|
Lathifah Kurnia K | G64180023 | Front End, Sistem Analyst, UI/UX Designer |
Tia Isnawati Noor | G64180034 | System Analyst, UI/UX Designer |
Ulfainil Aisyah | G64180045 | Full Stack, UI/UX Designer |
Hana Salsabila | G64180051 | Project Manager, Full Stack, UI/UX Designer, Database |
^ kembali ke atas ^
MVC
Model
MVC
MVC
Konsep OOP
Konsep OOP
Konsep OOP - Inheritage