Rabu, 15 April 2015

USE CASE DAN SEQUENCE DIAGRAM

Nama/NIM : Putu Pasek Okta Mahawardana/1404505040
Jurusan/Fakultas/Perguruan Tinggi : Teknologi Informasi/Teknik/Universitas Udayana
Mata Kuliah : Pemrograman Berorientasi Objek (B)
Dosen : I Putu Agus Eka Pratama, S.T., M.T.


Membuat Use Case dan Sequence Diagram Pada Kasir


Dalam dunia bisnis, Point Of Sales (POS) merujuk dalam pengertian tempat kasir (check-out counter) dengan mesin kasir (Cash Register). Sesuai dengan namanya, POS merupakan titik penjualan (Check-out) tempat di mana transaksi selesai. Ini adalah titik di mana pelanggan melakukan pembayaran dalam pertukaran barang atau jasa. Pada Point Of Sales penjual akan menghitung seluruh jumlah harga yang dibeli konsumen dan memberikan pilihan bagi pelanggan untuk melakukan pembayaran serta akan mengeluarkan tanda terima untuk transaksi pembelian.
Dalam perkembangannya, POS dapat dibuat sebagai suatu sistem dengan menggunakan sebuah jaringan komputer yang dioperasikan oleh komputer utama dan dihubungkan dengan beberapa terminal checkout POS. Istilah ini dikenal dengan nama Sistem Point Of Sales (POS). Point of Sale (POS) System: A computerized network operated by a main computer and linked to several checkout terminals. Pada dasarnya, sistem POS adalah cara all-in-one untuk melacak arus kas bisnis Anda.

Sistem Point Of Sales (POS) memerlukan sebuah aplikasi/software agar sistem tersebut berjalan sempurna untuk menjalankan proses transaksi dengan cepat dan sistematis yang berorientasi meningkatkan market interest dan pelayanan terhadap konsumen
Pada kesempatan kali ini, saya akan membahas UML yaitu Use Case dan Sequence Diagram dengan studi kasus mengenai sistem kasir umum pada swalayan. Adapun aplikasi yang akan kita gunakan disini adalah aplikasi Dia Diagram. Sebelum membuat desain diagram kita tentu harus mengetahui siapa saja aktor yang akan berperan pada sistem ini. Adapun aktor yang akan berperan pada POS ini adalah Admin dan Kasir. Berikut adalah Use Case Diagram yang akan menjelaskan hak akses oleh admin dan kasir.


Pada gambar diatas, kita dapat melihat bahwa:
·   Admin diberi hak untuk melakukan daftar, melakukan login sebagai admin, menginput data barang, mengedit atau mengupdate data barang, melihat data barang, mengedit data transaksi, melihat data transaksi, dan mencetak data transaksi. Admin tidak diberi hak untuk melakukan input transaksi, karena hak tersebut hanya milik kasir.
·   Kasir diberi hak untuk melakukan login sebagai kasir, melihat data barang, menginput transaksi, mengedit atau mengupdate data transaksi, melihat transaksi, dan mencetak transaksi.
Untuk memperjelas penggunaan atau maksud Use Case Diagram diatas, dapat dilihat pada Sequence Diagram berikut agar lebih memahami.
1. Sequence Daftar


2. Sequence Login


3. Sequence Input Data Barang


4. Sequence Edit Data Barang


5. Sequence View Data Barang


6. Sequence Input Transaksi


7. Sequence View Transaksi


8. Sequence Edit Transaksi


9. Sequence Cetak Data Transaksi

Selasa, 07 April 2015

PEMROGRAMAN GUI

Nama/NIM : Putu Pasek Okta Mahawardana/1404505040
Jurusan/Fakultas/Perguruan Tinggi : Teknologi Informasi/Teknik/Universitas Udayana
Mata Kuliah : Pemrograman Berorientasi Objek (B)
Dosen : I Putu Agus Eka Pratama, S.T., M.T.



Belajar Pemrograman GUI

Sekarang saya akan berbagi ilmu tentang pemrograman GUI pada java. GUI ( Graphic User Interface ) merupakan pemrograman dengan bahasa Java yang dibuat menggunakan aplikasi yang berbasiskan grafis. 


Berikut ini adalah koding dari GUI.

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class helloWorld extends JFrame {
    helloWorld(String title) {
        this.setSize(500,500);
        setTitle(title);
    }

    public static void main(String[] args) {
       helloWorld window = new helloWorld("GUI Java Hello World");
       window.setVisible(true);
       window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
   

}

Pada baris pertama yaitu import javax.swing.*; berfungsi untuk mengambil library swing, setelah itu pada baris kedua itu berfungsi untuk mengambil library awt. Pada public class helloWorld extends JFrame ini untuk membuat class helloWorld dengan extand Jframe. Pada his.setSize(500,500); untuk menentukan ukuran frame yang akan di buat,tinggal kita masukkan berapa panjang dan berapa lebar frame yang kita inginkan, setelah itu pada helloWorld window = new helloWorld untuk membuat objek jFrame agar bisa di panggil di fungsi lain dan menjelaskan variable helloWorld itu sebagai helloWorld. -("GUI Java Hello World"); digunakan untuk title atau judul dari aplikasi yang akan kalian buat, dan yang terakhir window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  untuk bisa membuat Frame bisa Default Close atau bisa menutup jendela tersebut.

Dibawah ini adalah screenshot program diatas.

Dan ini adalah hasil program diatas.

PROGRAM MENU

Nama/NIM : Putu Pasek Okta Mahawardana/1404505040
Jurusan/Fakultas/Perguruan Tinggi : Teknologi Informasi/Teknik/Universitas Udayana
Mata Kuliah : Pemrograman Berorientasi Objek (B)
Dosen : I Putu Agus Eka Pratama, S.T., M.T.




Belajar Membuat Menu Sederhana Pada Java

Disini saya akan menjelaskan tentang membuat program menu sederhana pada java. Pada program ini saya akan menghitung total transaksi dari pembeli, dalam program ini kita akan membuat pilihan menu makanan yang tersedia dan menghitung total menu makanan yang telah dipilih pembeli. Menu pada tempat makan tersebutlah yang kita buat dalam koding. Berikut koding program menu sederhana yang terdapat dibawah ini.

import java.util.Scanner;

public class Warung
{
    public static void main(String[] args)
    {
//        inisialisasi java library scanner
        Scanner scan = new Scanner(System.in);
//        menampilkan menu makanan
        System.out.println("MENU MAKANAN : ");
        System.out.println("_________________________________________");
        System.out.println("No Nama                      Harga");
        System.out.println("1. Ice Tea                     Rp 5000,00");
        System.out.println("2. Cappucino               Rp 10000,00");
        System.out.println("3. Lemon Tea              Rp 6000,00");
        System.out.println("4. Rainbow Cake         Rp 15000,00");
        System.out.println("5. Chocolate                 Rp 10000,00");
        System.out.println("");

//        inisialisasi pembayaran awal
        int harga = 0;
//        inisialisasi harga ketiga menu
        int h1=5000, h2=10000, h3=6000, h4=15000, h5=10000;
        String menu;

        for (String i = "Y"; i.equals("Y")||i.equals("y"); )
        {
        System.out.println("_________________________________________");
//        pengguna memasukkan nomor pesanan
        System.out.print("Masukkan Nomor Pesanan : ");
        int inNomor = scan.nextInt();
        System.out.println("_________________________________________");

        if (inNomor == 1)
        {
//            jika nomor satu, maka menu yang dipilih adalah Ice Tea, dan harganya adalah h1, yang merupakan harga menu pertama
            menu = "Ice Tea";
            System.out.println("Pilihan anda " + menu);
            harga = harga + h1;
        }
            else if (inNomor == 2)
            {
//            jika nomor dua, maka menu yang dipilih adalah Cappucino, dan harganya adalah h2, yang merupakan harga menu kedua
                menu = "Cappucino";
                System.out.println("Pilihan anda " + menu);
                harga = harga + h2;
            }
                else if (inNomor == 3)
                {
//            jika nomor tiga, maka menu yang dipilih adalah Lemon Tea, dan harganya adalah h3, yang merupakan harga menu ketiga
                    menu = "Lemon Tea";
                    System.out.println("Pilihan anda " + menu);
                    harga = harga + h3;
                }
                 else if (inNomor == 4)
                {
//            jika nomor empat, maka menu yang dipilih adalah Rainbow Cake, dan harganya adalah h4, yang merupakan harga menu keempat
                    menu = "Rainbow Cake";
                    System.out.println("Pilihan anda " + menu);
                    harga = harga + h4;
                }
                      else if (inNomor == 5)
                {
//            jika nomor lima, maka menu yang dipilih adalah Chocolate, dan harganya adalah h5, yang merupakan harga menu kelima
                    menu = "Chocolate";
                    System.out.println("Pilihan anda " + menu);
                    harga = harga + h5;
                }
                     else
//            jika selain nomor satu sampai lima, maka akan ditampilkan "Nomor yang dipilih tidak ada di menu."
                    {
                        System.out.println("Nomor yang dipilih tidak ada di menu.");
                    }

//            User diperintahkan untuk memasukkan data apakah dia akan melanjutkan atau tidak
            System.out.println("Apakah anda mau melanjutkan? Y/T");
            i = scan.next();

        }
        System.out.println("_________________________________________");
        System.out.println("Total pembayaran sebesar " +harga+".");
        System.out.println("Terimakasih atas kunjungannya.");
    }
}

Pada baris pertama menggunakan fungsi import java.util.scanner berfungsi untuk mengambil fungsi scanner pada java. Fungsi scanner sendiri adalah berguna untuk input - output pada java. Dalam program ini kita menggunakan fungsi scanner tersebut untuk menginputkan pilihan yang tersedia, dengan menggunakan scan.nextInt untuk memasukkan input ke variabel.

Program ini menggunakan pilihan menu dengan menggunakan looping for. Looping tersebut memakai aturan jika menginput 'Y' atau 'y' maka akan berulang. Untuk pilihan menu di program ini kita menggunakan nested if ( if bersarang ) dengan ketentuan jika menginputkan angka 1 sampai 5 sesuai dengan nomer menu maka harga dari menu tersebut disimpan dalam variabel harga. Jika memilih pilihan menu lagi maka variabel harga akan ditambah dengan variabel yang menyimpan harga dari menu yang dipilih. Sehingga jika sudah selesai memilih menu dan mengakhiri proses looping dengan tidak menginputkan 'Y' atau 'y' maka akan ditampilkan total harga dari menu yang sudah dipilih tadi. Dibawah ini adalah screenshot dari koding diatas, dan saya menggunakan program geany pada ubuntu.





Dibawah ini adalah output dari program diatas.


Terlihat dari output adalah menu beserta harganya. Saya mencoba pertama menginputkan angka 2, kemudian menginput y untuk kembali memilih menu. Menu kedua saya memilih menu ke 4 dengan menginput angka 4 dan mengakhiri pilihan menu dengan menginput t. Terakhir akan muncul total harga dari menu yang tadi sudah dipilih.
Sekian penjelasan program menu dari saya, apabila salah kata mohon dimaafkan, semoga dapat bermanfaat bagi kalian para progrmers.

Rabu, 01 April 2015

OVERRIDING

Nama/NIM : Putu Pasek Okta Mahawardana/1404505040
Jurusan/Fakultas/Perguruan Tinggi : Teknologi Informasi/Teknik/Universitas Udayana
Mata Kuliah : Pemrograman Berorientasi Objek (B)
Dosen : I Putu Agus Eka Pratama, S.T., M.T.




Belajar Overriding
Overriding adalah method subclass sama dengan method super class, parameter yang dimiliki sama tetapi pernyataan atau implementasinya berbeda. Atau overriding dapat diartikan merupakan suatu keadaan dimana kelas anak dapat mengubah atau bisa kita bilang memodifikasi atau memperluas data dan method pada kelas induk.
Keuntungan Overriding adalah dapat menambahkan sifat / atribut pada kelas induk nya lebih Jelasnya Overloading secara singkat :
1.      Mendefinisikan method dengan nama sama pada class yang berbeda.
2.  Konsep dapat di manfaatkan dalam beberapa kasus inheritance, di mana menginginkan penamaan method dengan nama sama namunberbeda dalam impelementasinya.
Pada program di atas terlihat bahwa method Sapa() pada super class(class Nama) di override di sub class(class Siapa) . Parameter pada kedua class tersebut sama yaitu tidak mempunyai paramater alias kosong, tetapi perbedaannya adalah implementasinya yaitu mencetak kalimat yang berbeda.

Ini adalah screenshot dari koding:
Ini setelah di run: