Kamis, November 19, 2015

Contoh Sederhana UML


Pada Posting blog saya yang membahas tentang “ Pengenalan UML “ sudah di jelaskan bahwa penggunaan UML sangat diperlukan dalam OOP. Saat ini kita sangat dimudahkan dalam membuat UML banyak software yang tersedia dalam pembuatan UML seperti : AgorUML dan violetumleditor-2.1.0.
Dalam posting blog saya kali ini, saya akan membahas contoh penerapan UML yang telah dibuat dengan software violetumleditor-2.1.0 kedalam program ( source code ) .
Berikut merupakan class diagram dari program Tabungan Pelajar


Dalam gambar class diagram sudah terlihat bahwa kita memerlukan 4 class untuk program ini yaitu class tabungan pelajar , class rekening , class pelajar dan class orang.
  •  Pertama buatlah class tabunganpelajar , yang berisikan tentang rekening dan nasabah seperti gambar di bawah ini. Source code berisikan informasi dari UML yang telah di buat terlebih dahulu.




public class tabunganpelajar
{
    public rekening rekeningku;
    public pelajar nasabah;

void daftar(rekening rekeningnasabah,pelajar nasabahbaru)
{
    rekeningku=rekeningnasabah;
    nasabah=nasabahbaru;
}
double ceksaldo()
{
    return rekeningku.ceksaldo();
}
  •         Kedua buatlah class rekening , yang berisikan tentang saldo yang tersedia, perhitungan Debet dan perhitungan Kredit . Source code berisikan informasi dari UML yang telah di buat terlebih dahulu. Seperti gambar dibawah ini.






public class rekening
{
  public double Saldo =3000000;
  public String NoRekening ;
 
  void setrekening (String rekening)
  {
      NoRekening = rekening;
  }
 
  String getrekening()
  {
      return NoRekening;
  }
  double Debet ( double Jumlah )
  {
      Saldo+=Jumlah;
      return Saldo;
  }
  double Kredit ( double Jumlah)
  {
      Saldo -=Jumlah;
      return Saldo;
  }
  double ceksaldo ()
  {
      return Saldo;
  }
}       
  • Ketiga buatlah class Orang , yang berisikan informasi umum identitas seperti nama , alamat dan Nomor KTP.





public class orang
{
  String NamaOrang;
     String AlamatOrang;
  String NoKTPOrang;

void setNamaOrang (String Nama )
  {
        this.NamaOrang = Nama ;
  }
String getNamaOrang ()
  {
        return NamaOrang;
  }
void setAlamatOrang (String Alamat)
  {
        this.AlamatOrang=Alamat;
  }
String getAlamatOrang ()
  {
        return AlamatOrang;
  }
void NoKTPOrang (String NoKTP)
  {
        this.NoKTPOrang=NoKTP;
  }
String getNoKTPOrang()
  {
        return NoKTPOrang;
  }
}       
  • Keempat buatlah class pelajar, class pelajar merupakan encapsulasi class yang merupakan sub class dari super class Orang maka dalam class pelajar terdapat perintah “ extend “ . ada tambahan yang di berikan oleh class pelajar yaitu informasi tentang NIM.




public class pelajar extends orang {
 String NIM;
 void setNIM(String Nomor)
  {
      NIM=Nomor;
  }
 String getNIM ()
  {
      return NIM;

  }
}

  •         Kelima setelah selesai membuat keempat class yang dibutuhkan maka diperlukannya class baru yang penamaan nya bebas yang bertugas untuk mengecek apakah program berjalan. Pada class tabunganpelajar pula di tambahkan perintah untuk mencetak informasi yang ada.


public class cek {
      public static void main (String [] args)
    {
        pelajar Mahasiswa = new pelajar();
        rekening NoRek = new rekening();
        tabunganpelajar Tabung = new tabunganpelajar();
       
        Mahasiswa.setNamaOrang ("Dwi okte cahyaningrum");
        Mahasiswa.setAlamatOrang ("karawang");
        Mahasiswa.NoKTPOrang("1312199470004");
        Mahasiswa.setNIM ("5302414070");
       
        NoRek.setrekening ("123456789");
        NoRek.Debet(100000);
        Tabung.daftar(NoRekMahasiswa);
        Tabung.TampilanData();
       
        System.out.println ("\n");
        NoRek.Kredit(500000);
        Tabung.daftar(NoRekMahasiswa);
        Tabung.TampilanData();
    }
}




Penambahan pada class tabunganpelajar

public class tabunganpelajar
{
   public rekening rekeningku;
   public pelajar nasabah;

void daftar(rekening rekeningnasabah,pelajar nasabahbaru)
{
   rekeningku=rekeningnasabah;
   nasabah=nasabahbaru;
}
double ceksaldo()
{
   return rekeningku.ceksaldo();
}
void TampilanData()
{
    System.out.println ("DATA NASABAH");
    System.out.println ("Nama : " +nasabah.getNamaOrang());
    System.out.println ("Alamat : " +nasabah.getAlamatOrang());
    System.out.println ("NoKTP : " +nasabah.getNoKTPOrang());
    System.out.println ("NIM : " +nasabah.getNIM());
   
    System.out.println ("DATA TABUNGAN");
    System.out.println ("NoRekening : " +rekeningku.getrekening());
    System.out.println ("SaldoTabungan : " +rekeningku.ceksaldo());
}

}


Jika program berjalan dengan benar maka akan mucul seperti gambar dibawah ini :



Terimakasih sudah mengunjungi blog saya semoga dengan penjelasan singkat dalam blog ini mudah di mengerti, bisa membantu pembelajaran dan menambah pengetahuan .

 D.O.C ( Dwi Okte Cahyaningrum )


Pengenalan UML



Pengertian UML
Unified Modeling Language merupakan salah satu alat bantu yang dapat digunakan dalam bahasa pemograman yang berorientasi objek, saat ini UML akan mulai menjadi standar masa depan bagi industri pengembangan sistem/perangkat lunak yang berorientasi objek sebab pada dasarnya UML digunakan oleh banyak perusahaan raksasa seperti IBM, Microsoft, dan sebagainya.
Unified Modeling Language (UML) adalah sebuah bahasa yang berdasarkan grafik atau gambar untuk menvisualisasikan, menspesifikasikan, membangun dan pendokumentasian dari sebuah sistem pengembangan perangkat lunak berbasis Objek (OOP)  (Object Oriented programming)”.
Langkah-langkah penggunaan Unified Modeling Language (UML)
Adapun langkah-langkah penggunaan Unified Modeling Language (UML)  diantaranya sebagai berikut :
Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul.
1.       Petakan use case untuk setiap business process untuk mendefinisikan dengan tepat fungsional yang harus disediakan oleh sistem, kemudian perhalus use case diagram dan lengkapi denganrequirement, constraints dan catatan-catatan lain.
2.       Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
3.       Definisikan requirement lain non fungsional, security dan sebagainya yang juga harus disediakan oleh sistem.
4.       Berdasarkan use case diagram, mulailah membuat activity diagram.
5.       Definisikan obyek-obyek level atas package atau domain dan buatlah sequence dan/ataucollaboration utuk tiap alir pekerjaan, jika sebuah use case memiliki kemungkinan alir normal danerror, buat lagi satu diagram untuk masing-masing alir.
6.       Buatlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case.
7.       Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domaindipecah menjadi hirarki class lengkap dengan atribut dan metodenya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain.
8.       Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokkan class menjadi komponen-komponen karena itu buatlah component diagram pada tahap ini. Selain itu, definisikantest integrasi setiap komponen untuk meyakinkan ia dapat bereaksi dengan baik.
9.       Perhalus deployment diagram yang sudah dibuat. Detailkan kemampuan dan requirement piranti lunak, sistem operasi, jaringan dan sebagainya. Petakan komponen ke dalam node.
10.   Mulailah membangun sistem. Ada dua pendekatan yang tepat digunakan:
§  Pendekatan use case dengan mengassign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit kode yang lengkap dengan test.
§  Pendekatan komponen yaitu mengassign setiap komponen kepada tim pengembang tertentu.
11.   Lakukan uji modul dan uji integrasi serta perbaiki model beserta codenya. Model harus selalu sesuai dengan code yang aktual.
12.   Perangkat lunak siap dirilis


Model UML (Unified Modeling Language)
Menurut Widodo (2011:10), “Beberapa literature menyebutkan bahwa UML menyediakan sembilan jenis diagram, yang lain menyebutkan delapan karena ada beberapa diagram yang digabung, misanya diagram komunikasi, diagram urutan dan diagram pewaktuan digabung menjadi diagram interaksi”. Namun demikian model-model itu dapat dikelompokkan berdasarkan sifatnya yaitu statis atau dinamis. Jenis diagram itu antara lain:

a. Diagram kelas (Class Diagram)
Bersifat statis, Diagram ini memperlihatkan himpunan kelas-kelas, antarmuka-antarmuka, kolaborasi-kolaborasi, serta relasi-relasi. Diagram ini umum dijumpai pada pemodelan sistem berorientasi objek. Meskipun bersifat statis, sering pula diagram kelas memuat kelas-kelas aktif.

b. Diagram paket (Package Diagram)
Bersifat statis. Diagram ini memperlihatkan kumpulan kelas-kelas, merupakan bagian dari diagram komponen.

c. Diagram use-case (Usecase Diagram)
Bersifat statis. Diagram ini memperlihatkan himpunan use-case dan aktor-aktor (suatu jenis khusus dari kelas). Diagram ini terutama sangat penting untuk mengorganisasi dan memodelkan perilaku suatu sistem yang dibutuhkan serta diharapkan pengguna.

d. Diagram interaksi dan sequence (Sequence Diagram)
Bersifat dinamis. Diagram urutan adalah iterasiksi yang menekankan pada pengiriman pesan dalam suatu waktu tertentu.

e. Diagram komunikasi (Communication Diagram)
Bersifat dinamis. Diagram sebagai pengganti diagram kolaborasi UML yang menekankan organisasi struktural dari objek-objek yang menerima serta mengirim pesan.

f. Diagram statechart (Statechart Diagram)
Bersifat dinamis. Diagram status memperlihatkan keadaan-keadaan pada sistem, memuat status (state), transisi, kejadian serta aktivitas.

g. Diagram aktivitas (Activity Diagram)
Bersifat dinamis. Diagram aktivitas adalah tipe khusus dari diagram status yang memperlihatkan aliran dari suatu suatu aktivitas ke aktivitas lainnya dalam suatu sistem. Diagram ini terutama penting dalam pemodelan fungsi-fungsi suatu sistem dan memberi tekanan pada aliran kendali antar objek.

h. Diagram komponen (Component Diagram)
Bersifat statis. Diagram komponen ini memperlihatkan organisasi serta kebergantungan sistem/perangkat lunak pada komponen-komponen yang telah ada sebelumnya.

i. Diagram deployment (deployment diagram)

Bersifat statis. Diagram inimemperlihatkan konfigurasi saat aplikasi dijalankan (run-time). Memuat simpul-simpul beserta komponen-komponen yang di dalamnya. Kesembilan diagram ini tidak mutlak harus digunakan dalam pengembangan perangkat lunak, semuanya dibuat sesuai kebutuhan. Pada UML dimungkinkan kita menggunakan diagram-diagram lainnya misalnya data flow diagram, entity relationship diagram, dan sebagainya.

Ritonga, Pahmi.” PENGERTIAN UNIFIED MODELING LANGUAGE ( UML ) DAN MODELNYA MENURUT PAKAR “ . 25 April 2015 . http://www.bangpahmi.com/2015/04/pengertian-unified-modelling-language-uml-dan-modelnya-menurut-pakar.html


Arie, Brigida. “ Pengertian UML “.14 Februati 2013 . http://informatika.web.id/pengertian-uml.htm.


        Terimakasih sudah mengunjungi blog saya semoga dengan penjelasan singkat dalam blog ini mudah di mengerti, bisa membantu pembelajaran dan menambah pengetahuan 
 D.O.C ( Dwi Okte Cahyaningrum )

  • Blogger news

  • Blogroll