Arie Wahyu Triansyah
Apriyantika H
Anita Lubis
Reza Fualdi
Hendi
Laporan KRS Online
Pendahuluan
Pemrograman berorientasi objek atauobject-oriented programming (OOP)merupakan paradigma pemrogramanyang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelasatau objek-objek. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.
Pemrograman Berorientasi objek mampunya ciri sebagai berikut :
semua adalah objek (hampir) = “objek” adalah variable yang istimewa.
program adalah kumpulan dari objek-objek yang saling berinteraksi dengan mengirimkan pesan. Cara mengirimkan pesannya adalah = dengan memanggil method dari objek bersangkutan.
setiap objek mempunyai memory masing-masing yang tersusun dari objek-objek lain.
setiap objek mempunyai fasi = “type” disebut “class”
semua objek dari tipe tertentu dapat menerima pesan yang sama.
Semua objek mempunyai :
“state” = Attribute fie
“behavior” = Method member function
“identity” = Alamat memory
Dalam Project ini kelompok kami akan membuat Program aplikasi KRS (Kartu Rencana Study) Online yang harus di isi oleh mahasiswa setiap memasuki semester baru. Program aplikasi ini sangat diperlukan universitas agar mempunyai database mahasiswanya dan dapat dengan mudah mengatur dan menyimpan jadwal perkuliahan mahasiswa agar tidak bentrok dengan mahasiswa lainnya.
Dasar Teori
Dalam membuat program dalam OOP adalah dengan membagi tahapan-tahapan terlebih dahulu. Awal mulanya harus menentukan objek apa saja yang akan digunakan, lalu memasukkan interface yang berkaitan dengan objek-objek tersebut. Setelah itu membuat use case diagramnya dengan menggunakan actor dan interface didalamnya. Bila use case diagramnya sudah jadi diteruskan dengan membuat sequence diagram yang dimana diagram tersebut akan menghubungkan objek satu dengan yang lainnya sampai menghasilkan hasil akhir. Setelah use case dan sequence diagram selesai dibuat dilanjutkan dengan menentukan class diagram.
Use case Diagram
Saat membuat program dalam OOP diperlukan diagram UML yang terdiri dari use case diagram dan sequence diagram. Use case diagram adalah gambaran graphical dari beberapa atau semua actor, use case, dan interaksi diantara komponen-komponen tersebut yang memperkenalkan suatu sistem yang akan dibangun. Use case diagram menjelaskan manfaat suatu sistem jika dilihat menurut pandangan orang yang berada di luar sistem. Diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar. Use case diagram dapat digunakan selama proses analisis untuk menangkap requirements sistem dan untuk memahami bagaimana sistem seharusnya bekerja. Selama tahap desain, use case diagram berperan untuk menetapkan perilaku (behavior) sistem saat diimplementasikan. Dalam sebuah model mungkin terdapat satu atau beberapa use case diagram. Kebutuhan atau requirements sistem adalah fungsionalitas apa yang harus disediakan oleh sistem kemudian didokumentasikan pada model use case yang menggambarkan fungsi sistem yang diharapkan (use case), dan yang mengelilinginya (actor), serta hubungan antara actor dengan use case (use case diagram) itu sendiri.
Sequence Diagram
Suatu sequence diagram adalah suatu penyajian perilaku yang tersusun sebagai rangkaian langkah-langkah percontohan dari waktu ke waktu. Sequence diagram digunakan untuk menggambarkan arus pekerjaan, pesan yang sampaikan dan bagaimana elemen-elemen di dalamnya bekerja sama dari waktu ke waktu untuk mencapai suatu hasil. Masing – masing urutan elemen diatur di dalam suatu urutan horisontal, dengan pesan yang disampaikan dibelakang dan didepan diantara elemen-elemen.
Seorang elemen aktor digunakan untuk menghadirkan pemakai yang memulai alur peristiwa / kejadian.
Elemen – elemen yang ditiru, seperti boundary, control dan entity, digunakan untuk menggambarkan layar, pengontrol, dan materi database, secara berturut-turut.
Masing-masing elemen yang dihubungkan garis – garis batang disebut suatu lifeline, di mana jika unsur itu berpotensi mengambil bagian dalam interaksi itu.
Class Diagram
Sementara class diagram di gunakan untuk menampilkan kelas – kelas atau paket – paket di dalam system dan relasi atau hubungan antara objek, class diagram memberikan gambaran secara statis. Biasanya, di buat beberapa class diagram untuk satu system. Satu class diagram menampilkan subset dari kelas – kelas dan relasinya, menampilkan nama class, operasi dan atribut, menampilakan paket – paket kelas dan relasi antara paket.
Class diagram membantu untuk mendapatkan struktur system sebelum menuliskan kode program, membantu untuk memastikan bahwa sistem adalah rancangan terbaik.
Diagram UML
Use case diagram KRS online
Use Case yang kami buat ini adalah baru sebagian kecil fungsionalitas yang di lakukan dalam system KRS, mungkin masih banyak fungsionalitas lainnya yang di lakukan dalam system KRS yang belum teridentifikasi oleh kami. Oleh karena, itu kami memerlukan saran atau kritik terhadap system KRS yang kami buat.
Pada system KRS yang kami buat ini, baru ada dua fungsionalitas yang kami ketahui atau teridentifikasi yaitu login dan milih Mata Kuliah. Pertama kami mengidentifikasi login, setiap system di perlukan login untuk melakukan autorisasi dari system terhadap user yang akan memasuki system tersebut dan juga sebagai security yang berguna agar data yang kita miliki tidak di ambil orang lain. Kedua fungsional milihMK setelah kita masuk ke dalam system, karena ini adalah system (KRS) Kartu Rencana Study online yang biasanya di perlukan oleh mahasiswa untuk memudahkan universitas dalam mengatur jadwal perkuliahan, memudahkan mahasiswa memilih mata kuliah yang akan di ambil dan menyimpannya ke dalam database universitas yang bersangkutan.
Sementara bagaimana fungsionalitas – fungsionalitas ini berkerja atau berinteraksi dengan menggunakan obyek – obyek yang tersedia dalam use case, obyek apa saja yang di butuhkan untuk satu fungsionalitas, pesan apa saja yang obyek kirimkan ke obyek lainnya dan urutan pesan – pesan yang di kirimkan. kami akan membahasnya pada bagian selanjutnya dalam sequence diagram.
Sequence diagram Login
Cara kerja use case login, yaitu :
Aktor (mahasiswa) mengirimkan initial message “login” ke system untuk di proses.
Obyek LoginForm akan menerima initial message tesebut, dan mengirimkan message “inputData“ ke obyek LoginFormManager.
Obyek LoginFormManager menerima message dari obyek LoginForm, kemudian mengirimkan message “membacaData“ ke obyek PenyimpananData.
Jika pesan tebaca obyek PenyimpananData akan mengirimkan message ke dirinya sendiri berupa “masukSystem”.
Sequence diagram Milih Mata Kuliah
Pada use case milih mata kuliah kami membuatkan sebuah sequence diagram untuk menunjukan cara kerja dari use case tersebut.
Aktor (mahasiswa) mengirimkan sebuah initial message ke sytem berupa “milihMK” (use case) sebagai perintah pertama. Initial message dari aktor di terima oleh obyek PemilihanMK untuk di proses system.
Kemudian Obyek PemilihanMK mengirimkan message ke obyek DaftarMK untuk “memintaDaftarMK“, dan Obyek DaftarMK mengembalikan sebuah nilai.
Setelah aktor melakukan proses PemilihanMK, obyek PemilihanMK mengirimkan pesan kembali untuk “inputData“, ke Obyek PenyimpananData.
Data di simpan dalam Obyek PenyimpananData kemudian obyek tersebut mengirimkan message ke obyek Admin berupa “konfirmasi”.
Obyek Admin mengirimkan message ke obyek printer berupa “cetakData”.
Obyek Printer mengirimkan message pada dirinya sendiri yaitu “keluarkanJadwal”.
Class Diagram KRS Online
Class diagram dari use case
Implementasi Java
login
import javax.swing.JOptionPane;
public class KRSAPP {
public static void main (String [] arg){
PemilihanMK PMK = new PemilihanMK();
PMK.milihMK();
LoginForm LF = new LoginForm();
LF.login();
String KRS = "KRS online";
String UAI = "Universitas Al Azhar Indonesia";
JOptionPane.showMessageDialog(null, KRS + "\n" + UAI);
}
}
public class LoginForm {
LoginFormManager LFM;
LoginForm()
{
LFM = new LoginFormManager();
}
public void login()
{
LFM.inputData();
}
}
public class LoginFormManager {
PenyimpananData PD;
LoginFormManager()
{
PD = new PenyimpananData();
}
public void inputData()
{
PD.membacaData();
}
}
public class PenyimpananData {
Admin ADM;
PenyimpananData()
{
ADM = new Admin();
}
public void inputData()
{
ADM.konfirmasi();
}
public void membacaData()
{
masukPemilihanMK();
}
private static void masukPemilihanMK()
{
}
}
milihMK
import javax.swing.JOptionPane;
public class KRSAPP {
public static void main (String [] arg){
PemilihanMK PMK = new PemilihanMK();
PMK.milihMK();
LoginForm LF = new LoginForm();
LF.login();
String KRS = "KRS online";
String UAI = "Universitas Al Azhar Indonesia";
JOptionPane.showMessageDialog(null, KRS + "\n" + UAI);
}
}
import java.util.Vector;
class PemilihanMK {
DaftarMK DMK;
PenyimpananData PD;
PemilihanMK()
{
DMK = new DaftarMK();
PD = new PenyimpananData();
}
public void milihMK()
{
Vector v = DMK.mintaDaftar ();
PD.inputData();
tampilkanMK();
}
private static void tampilkanMK()
{
}
}
public class DaftarMK {
public Vector mintaDaftar()
{
Vector v = new Vector();
return new Vector();
}
}
public class PenyimpananData {
Admin ADM;
PenyimpananData()
{
ADM = new Admin();
}
public void inputData()
{
ADM.konfirmasi();
}
public void membacaData()
{
masukPemilihanMK();
}
private static void masukPemilihanMK()
{
}
}
public class Admin {
Printer PTR;
Admin ()
{
PTR = new Printer();
}
public void konfirmasi ()
{
PTR.cetakData();
}
}
public class Printer {
public void cetakData()
{
keluarkanJadwal();
}
private void keluarkanJadwal()
{
}
}
Output
No comments :
Post a Comment