Senin, 05 Desember 2016

Design Pattern - State Pattern

Kali ini saya akan membahas mengenai salah satu Design Pattern yaitu State Pattern. Untuk memenuhi penugasan Kuliah Perancangan Perangkat Lunak. apa itu Design pattern ?
  
 1. Definisi Design Pattern
Design Pattern adalah sebuah solusi untuk menyelesaikan masalah umum yang sering di temui dan dihadapi, yang membentuk sebuah pola (pattern) tertentu dalam membuat sebuah program. Pattern adalah bagaimana mendesain kelas dan bagaimana interaksi yang terjadi antar kelas tersebut sehingga kelas yang kita bangun bisa lebih elegan dan reusable. Ada beberapa pattern yang populer saat ini yang diciptakan oleh GoF (Gang of Four) yaitu Abstract Factory, Builder, Factory Method, Prototype, Singleton, Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy, Chain of Responbility, Command, Interpreter, Iterator, Mediator, Mementto, Observer, State, Strategy, Template Method, Visitor. (sumber : http://coretantian.blogspot.co.id/2012/04/pengertian-design-pattern.html) 

 2. Definisi State Pattern
Namun pada pembahasan kali ini kita akan membahas khusus Design patter - State Pattern. nah untuk pengertian dari state pattern itu sendiri adalah solusi untuk masalah bagaimana membuat perilaku tergantung pada state.Pola state ini tidak menentukan mana transisi state yang akan di definisikan. Pilihannya adalah dua, yakni : “konteks” objek atau setiap kelas state individu berasal. Keuntungan dari opsi terakhir adalah kemudahan untuk menambah kelas baru yang berasal dari state. Kelemahannya adalah setiap kelas turunan dari state memiliki pengetahuan sambungan yang memperkenalkan dependensi antara subclass. (Sumber : https://nchy22.wordpress.com).

Nah bagaimana pengertian dari Design pattern dan state pattern diatas ? apakah sudah mengerti ? jika sudah, mari kita melihat implementasinya :

  • Context : kelas ini berfungsi untuk membawa informasi baru terkait state yang berganti
  • State : merupakan suatu interface yang akan mendefinisikan suatu aksi yang terhubung kepada Context untuk perubahan state
Kita akan membuat sebuah antarmuka dari state yang akan mendefinisikan aksi.

1. membuat interface :  State.java

2. Membuat Kelas concrete yang mengimplementasikan interface : StartState.java StopState.java 3. Membuat kelas context : Context.java 4. Menggunakan context untuk melihat perubahan behavior ketika state berganti : StatePatternDemo.java 5. Output
Share:

Kamis, 27 Oktober 2016

Share:

Sistem Informasi Perpustakaan

Sistem Informasi Perpustakaan

··         Use case Diagram
Use case diagram ialah model fungsional sebuah system yang menggunakan actor dan use case. Use case adalah layanan (services) atau fungsi-fungsi yang disediakan oleh system untuk penggunanya (Henderi et al, 2008).
Use Case Diagram menggambarkan fungsionalitas yang diharapkan dari sebuah system. Yang tekankan adalah “apa” yang dubuat system, dan bukan “bagaimana” sebuah use case menerangkan sebuah interaksi antar actor dengan system. Use case merupakan sebuah pekerjaan tertentu, misal :login ke system, meng-create sebuah daftar belanja, dsb. Seorang sebuah actor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan system untuk melakukan pekerjaan-pekerjaan tertentu.

Use Case Diagram dapat sangat membantu bila kita sedang menyusun requitment sebuah system, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada system. Sebuah use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsional yang common.

·         Class Diagram
Class diagram adalah sebuah class yang menggambarkan struktur dan penjelasan class, paket, dan objek serta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class diagram juga menjelaskan hubungan antar class dalam sebuah sistem yang sedang dibuat dan bagaimana caranya agar mereka saling berkolaborasi untuk mencapai sebuah tujuan.
Class Diagram Sistem informasi Perpustakaan :




Source Code :
 :

·         Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar system, berupa message yang digambarkan terhadap waktu.  Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).

Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya.
Share:

Senin, 26 September 2016

Share:

Use case Diagram ATM dan sequence Diagram

gambar diatas merupakan menu pada mesin ATM. adapun pada dokumentasi tugas kali ini akan dibahas mengenai Use Case Diagram ATM dan sequence diagramnya.

adapun aktor yang terlibat : Nasabah, Operator, Bank
dan use case : session, transaksi, ganti pin, transfer, pembayaran, informasi saldo, penarikan tunai, system startup, system shutdown.
berikut gambar dari use case diagram dari ATM :


adapun kegunaan dari use case tersebut dijelaskan dibawah ini :

System Startup :
Sistem akan dihidupkan ketika operator mengarahkan switch ke posisi "on" pada mesin atm dan operator
akan memasukkan jumlah uang yang tersedia pada brankas atm sehingga mesin atm sudah terkoneksi ke bank
dan nasabah sudah dapat memakai mesin Atm.

System Shutdown :
Sistem akan dimatikan ketika operator sudah memastikan bahwasanya tidak ada lagi nasabah yang menggunakan mesin ATM
dengan mengarahkan switch ke posisi "off" pada mesin atm dan operator bebas untuk melakukan maintenance (seperti mengisi kembali uang dan kertas nota ke brankas)

Session use case :
session dimulai ketika nasabah memasukkan kartu ATM ke mesin ATM. mesin ATM akan menarik kartu tersebut dan akan membacanya
(jika kartu tidak masuk dengan sempurna maka kartu akan dieject kembali dan akan muncul pesan error pada layar). Setelah kartu ATM berhasil dibaca
oleh mesin ATM maka nasabah akan diminta untuk memasukkan PIN jika PIN salah maka akan muncul pesan INVALID PIN dan nasabah diminta untuk memasukkan
PIN kembali, dan jika PIN benar maka transaksi dapat dilakukan. setelah transaksi selesai dilakukan maka nasabah akan ditanyai apakah ingin melanjutkan
transaksi atau tidak, jika iya, maka kembali transaksi lagi dan jika tidak, kartu ATM akan direject sekaligus dengan print nota.

Transaksi Use case :
Transaksi disini merupakan transaksi yang terdapat pada menu atm BNI yaitu meliputi (Transfer, Informasi Saldo, pembayaran, tarik tunai, ganti pin)
dan transaksi dimulai jika sudah melewati tahap session dimana kartu ATM sudah terbaca di mesin ATM dan PIN yang dimasukkan benar.
untuk melakukan transaksi tarik tunai biasanya akan ada option jumlah uang yang ingin ditarik ataupun dengan memasukkan jumlah uang yang ingin dimasukkan
(dalam kelipatan 50.000 atau 100.000) uang yang ingin ditarik maximal sama dengan saldo yang ada pada rekening (jika bank BNI) dan jika memenuhi syarat
maka transaksi berhasil dan nota akan terprint sekaligus dengan uang akan dapat diambil.
semua aktifitas akan tercatat pada log ATM.

Informasi saldo use case :
informasi saldo merupakan suatu informasi pada rekening seorang nasabah terkait saldo yang ia miliki. jika transaksi ini yang dipilih oleh nasabah
maka pada layar mesin ATM akan ditampilkan informasi saldo yang tersisa pada rekening nasabah.

Transfer use Case :
pada transaksi transfer terbagi menjadi dua yaitu transfer antar sesama bank atau transfer beda bank, jika transfer berbeda bank maka perlu dimasukkan kode ban
tujuan dan apabila tujuan nya antar sesama bank maka tidak perlu memasukkan kode bank, cukup memasukkan no rekening tujuan saja.

pembayaran use case :
pada transaksi pembayarn terdapat beberapa menu lagi diantaranya (pembayaran tiket, voucher telpon, pendidikan, dll) silahkan memilih salah satu menu
yang tersedia pada menu pembayran, dan ketika transaksi selesai maka mesin akan mencetak nota sebagai bukti transaksi.

tarik tunai use case : 
tarik tunai merupakan proses untuk menarik uang, biasanya pada menu tampilan utama sudah tersedia jumlah uang yang ingin ditarik (100 ribu, 300 ribu, 1.5 juta)
akan tetapi juga bisa input secara tersendiri sesuai dengan keperluan nasabah (dengan syarat kelipatan 50 ribu dan 100 ribu).

ganti pin usecase :
untuk mengganti PIN ATM sebelumnya kan dimintai memasukkan PIN yang lama, jika benar maka akan dimintai memasukkan PIN yang baru dan konfirmasi PIN sekali lagi
untuk meyakinkan.


System Startup :
System Shutdown :
Session :
Transaksi :














Share:

Selasa, 13 September 2016

UML Diagram Air Conditioner

Gambar Dibawah ini merupakan UML (Unified Modeling Languange) Diagram Air Conditioner. Gambar tersebut dibuat dengan menggunakan draw.io , dan pada gambar tersebut diperlihatkan hubungan antara user dan perangkat AC.

Use Case Diagram :
Use case adalah abstraksi dari interaksi antara sistem dan user. Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai.



Pada gambar tersebut ada 6 case yaitu :
1. On Off Power : untuk hidup dan matikan AC
2. Switch : untuk menaik-turunkan window AC
3. Timer : mengatur timer AC
4. Fan Speed : mengatur kecepatan fan
5. Mode : Memilih mode AC yang diinginkan
6. Control Temperature : mengatur suhu



Share:

Minggu, 29 Mei 2016

Dokumentasi Final Project Pemrograman Web

LAPORAN PEMROGRAMAN WEB
SISTEM PPDB ONLINE



                                                                              Deni Ismail                              5114100022
                                                                                           Ananda Ricky                          5114100056
                                                                                           Farhan Ramadhana                  5114100078

                 
I.      Rancangan Basis Data






II.                  Deskripsi Interface yang digunakan
1.       Gambar di bawah ini adalah halaman utama peserta yang ingin mendaftar, caranya dengan mendaftar terlebih dahulu, kemudian setelah melakukan pendaftaran, langsung lakukan login dengan menggunakan email yang telah di daftarkan.

2.       Gambar kedua berisi tampilan yang berupa tahapan pendaftaran yang harus dilakukan oleh siswa yang ingin mendaftar ke sekolah lanjutannya. Dengan detail urutan seperti gambar di bawah ini :


Gambar 2.0 Halaman Awal


Gambar 2.1 Pengisian Biodata

Gambar 2.2 Pilihan Sekolah

Gambar 2.3 Memasukkan Nilai

Gambar 2.4 Konfirmasi Data yang telah di isi
Setelah melakukan verifikasi data atau konfirmasi data, kartu pendaftara dapat langsung di cetak.


Gambar 2.4.0 Tools untuk cetak kartu pendaftaran

Gambar 2.5 Hasil Sementara dari perangkingan.

3.       Selanjutnya adalah data interface yang dilakukan oleh admin atau petugas kabupaten.

Gambar 3.0 Data Siswa pendaftar dengan keterangan tertentu.

Gambar 3.1 Data siswa yang belum di verifikasi petugas.

          Cara Verifikasi data dari petugas hanya mengecek apakah ada data yang kosong jika sudah benar langsung di konfiirmasi dan di validasi.

Gambar 3.1.0 Konfirmasi data siswa

III.                Penjelasan Setiap modul yang di gunakan adalah sebagai berikut :
1.       Controlers
-          Home.php
-          Register.php
-          Siswa.php
-          User.php
-          Welcome.php
2.       Model
-          Config_model.php
-          Main_model.php
-          Nilai_model.php
-          Pelajaran_model.php
-          Register_model.php
-          User_model.php
3.       View
-          Footer.php
-          Header.php
-          Index.php
-          Menu.php
-          Rank.php
-          User
·         Akun.php
·         Login.php
-          Siswa
·         Biodata.php
·         Index.php
·         Konfirmasi.php
·         Nilai.php
·         Sekolah.php
-          Admin
·         Hasil.php
·         Index.php
·         Nilai.php
·         Pelajaran.php
·         Sekolah.php


Share:

Farhanramadhana.blogspot.com

Diberdayakan oleh Blogger.

Daftar Blog Saya