Jumat, 05 Januari 2018

Statechart Diagram

Diagram status atau statechart diagram menunjukkan kondisi yang dapat dialami atau terjadi pada sebuah objek sehingga setiap objek memiliki sebuah diagram status. Diagram status diadopsi dari penggambaran kondisi mesin status (state machine) yang menggambarkan status apa saja yang dialami oleh mesin, misalnya mesin pembelian kopi dengan uang koin.
Diagram Status mengambarkan seluruh state/status yang memungkinkan obyek-obyek dalam class dapat dimiliki dan kejadian-kejadian yang menyebabkan satus berubah. Perubahan dalam suatu state disebut juga transisi (transition). Suatu transisi juga dapat memiliki sebuah aksi yang dihubungkan pada status, lebih spesifik apa yang harus dilakukan dalam hubungannya dengan transisi status. Pada diagram ini, perilaku sistem ditunjukkan. Sebuah status adalah kondisi selama hidup objek atau interaksi selama memenuhi suatu kondisi, melaksanakan suatu aksi, atau menunggu suatu kejadian.

Simbol - simbil yang ada pada statechart diagram :

Related image


Class Diagram

Definisi Class Diagram

Class Diagram merupakan diagram yang menunjukan class yang ada dari sebuah sistem dan hubungan - hubungannya secara logika. Class diagram menggambarkan struktur statis dari sebuah sistem. Karena itu class diagram merupakan hal penting dan dasar dari hampir setiap metode berorientasi objek termasuk UML.

Elemen - elemen Class Diagram
Elemen-eleman class diagram dalam pemodelan UML terdiri dari: Class-class, struktur class, sifat class (class behavior), perkumpulan/gabungan (association), pengumpulan/kesatuan (agregation), ketergantungan (dependency), relasi-relasi turunannya, keberagaman dan indikator navigasi, dan role name (peranan/tugas nama).

Simbol - simbol class diagram
1.  Class: Class adalah blok - blok pembangun pada pemrograman berorientasi obyek.Sebuah class digambarkan sebagai sebuah kotak yang terbagi atas 3 bagian. Bagian atas adalah bagian nama dari class. Bagian tengah mendefinisikan property/atribut class. Bagian akhir mendefinisikan methodmethod dari sebuah clas.
2.  Association : Sebuah asosiasi merupakan sebuah relationship paling umum antara 2 class dan dilambangkan oleh sebuah garis yang menghubungkan antara 2 class. Garis ini bisa melambangkan tipe-tipe relationship dan juga dapat menampilkan hukum-hukum multiplisitas pada sebuah relationship.(Contoh: One-to-one, one-to-many,many-to-many).
3.  Composition: Jika sebuah class tidak bisa berdiri sendiri dan harus merupakan bagian dari class yang lain, maka class tersebut memiliki relasi Composition terhadap class tempat dia bergantung tersebut. Sebuah relationship composition digambarkan sebagai garis dengan ujung berbentuk jajaran genjang berisi/solid.
4. Dependency : Kadangkala sebuah class menggunakan class yang lain. Hal ini disebut dependency. Umumnya penggunaan dependency digunakan untuk menunjukkan operasi pada suatu class yang menggunakan class yang lain. Sebuah dependency dilambangkan sebagai sebuah panah bertitik-titik.
5. Aggregation: Aggregation mengindikasikan keseluruhan bagian relationship dan biasanya disebut sebagai relasi.
6.  Generalisasi / inheritence digunakan dalam hubungan antara kelas induk dengan kelas turunan (inherited). Relasi antar kelas dengan makna generalisasi spesialisasi (umum - khusus).
7. Multiplicity atau multiplisitas memnunjukkan jumlah suatu objek yang bias berhubungan dengan objek lain.

Related image

Senin, 18 September 2017

Activity Diagram

Masih bagian RUP, kali ini kita akan membahas Activity Diagram. Apa itu Activity Diagram kita bahas lebih lanjut detailnya.


Pengertian Activity Diagram
Activity diagram memodelkan workflow proses bisnis dan urutan aktivitas dalam sebuah proses. Diagram ini sangat mirip dengan flowchart karena memodelkan workflow dari satu aktivitas ke aktivitas lainnya atau dari aktivitas ke status. Menguntungkan untuk membuat activity diagram pada awal pemodelan proses untuk membantu memahami keseluruhan proses. Activity diagram juga bermanfaat untuk menggambarkan parallel behaviour atau menggambarkan interaksi antara beberapa use case.
Definisi activity diagram :
  • Menggambarkan proses bisnis dan urutan aktivitas dalam sebuah proses
  • Dipakai pada business modeling untuk memperlihatkan urutan aktifitas proses bisnis
  • Struktur diagram ini mirip flowchart atau Data Flow Diagram pada perancangan terstruktur 
  • Sangat bermanfaat apabila kita membuat diagram ini terlebih dahulu dalam memodelkan sebuah proses untuk membantu memahami proses secara keseluruhan
  • Activity diagram dibuat berdasarkan sebuah atau beberapa use case pada use case diagram.
Sebelum kita dapat membuat activity diagram kita harus tahu symbol - symbol pada activity diagram.


➤Initial State atau Start Point : Menunjukkan aktivitas awal aktivitas dimulai.
➤Final State atau End Point : Menunjukkan bagian akhir dari aktivitas.
➤State atau Activity : Menunjukkan aktivitas yang dilakukan.
➤Fork : Digunakan untuk memecah behaviour menjadi activity atau action yang paralel.
➤Join : Untuk menggabungkan kembali activity atau action yang paralalel.
➤Decision : Digunakan untuk menggambarkan test kondisi untuk memastikan bahwa control flow atau object flow mengalir lebih ke satu jalur, jumlah jalur sesuai yang diinginkan.
➤Swimlanes : Memecah activity diagram menjadi baris dan kolom untuk membagi otoritas atau tanggung jawab obyek-obyek yang melakukan aktivitas.
➤Transition : Menunjukkan aktivitas selanjutnya setelah aktivitas sebelumnya.

Perlu diketahui terkadang kita keliru dalam penggunaan Decision dan Fork. Decision digunakan untuk memecah aktivitas yang bersifat kondisional misalnya, ya-tidak, atau user 1, user 2, user 3, sedangkan fork untuk memecah behavior menjadi aktivitas yang paralel seperti user yang dapat memilih menu hapus, edit, delete yang dapat dilakukan secara paralel.

(Contoh activity diagram dalam mengelola perpustakaan )

(Contoh activity diagram dalam mesin ATM )

Demikian penjelasan mengenai Activity Diagram...

Rabu, 06 September 2017

Mengenal RUP (Rational Unified Process) dan Sejarahnya

Apa itu RUP ?, Singkatan dari Rational Unified Process, adalah suatu kerangka atau pedoman kerja dalam pengembangan perangkat lunak dengan difokuskan pada analisa kebutuhan dan desainnya. RUP bukanlah suatu proses tunggal dengan aturan yang konkrit, melainkan suatu kerangka proses yang dapat diadaptasi dan dimaksudkan untuk disesuaikan oleh organisasi pengembang dan tim proyek perangkat lunak yang akan memilih elemen proses sesuai dengan kebutuhan mereka.

Sebelum kita bahas lebih lanjut apa itu RUP, kita bahas dahulu sejarah dan perkembangannya 👌

Rational Unified Process atau biasa disingkat dengan RUP ini, awal mulanya berasal dari  “Three Amigos” –Ivar Jacobson, Grady Booch, dan James Rumbaugh- yang bertujuan untuk memastikan kualitas yang terbaik pada suatu produksi software dengan memperkirakan jadwal dan biaya yang harus dikeluarkan. RUP merupakan process product dari Rational® Software dengan konsep utamanya adalah tentang model, workflow dan workers, serta tentang phase dan iterasi.

Perkembangan RUP
  1. Rational machines (Paul Levy dan Mike Devlin, 1981) Menyediakan tools untuk perkembangan software engineering Terintegrasi dengan ADA Programming Language.
  2. Grady Booch, Object Oriented Design (OOD).
  3. Oktober 1994 : James Rumbough, Object Modeling Technique (OMT).
  4. Musim gugur 1995 : Ivar Jacobson, Object Oriented Software Engineering (OOSE)
  5. Rational Machines → Rational 
  6. 20 Februari 2003 Rational Machines dijual ke IBM seharga US$2.1 Billion.                                                                                  😅(Uang apa daun itu)👆

Dimensions of RUP

RUP disusun dari 2 dimensi :

Time
    Perkembangan Life Cycle menjadi fase - fase atau iterasi - iterasi.

Komponen Process
    Process adalah urutan langkah - langkah dalam membangun sebuah software.

*Proses mendifinisikan SIAPA (who), melakukan APA (what), KAPAN (when), DIMANA (where) dan BAGAIMANA (how) untukmencapai sebuah GOAL.

RUP Architecture

RUP arsitektur dibagi menjadi 2 :

Dynamic Structure
    Aspek dinamis berkaitan dengan cycle Time atau waktu proyek.

Dynamic Structure mempunyai 4 fase :
Inception
    Fase ini membantu Anda menentukan kelayakan proyek, apa yang diinginkan pelanggan dan bagaimana Anda akan melakukannya?
Elaboration
    Tujuan dari tahap elaborasi adalah untuk menentukan dan mendahulukan arsitektur sistem agar dapat memberikan dasar yang stabil supaya perancangan dan implementasi dalam tahap konstruksi.
Construction
    Konstruksi adalah tentang pengembangan biaya yang hemat, biaya dari produk yang lengkap dari versi operasional sistem Anda yang dapat digunakan di komunitas pengguna.
Transition
    Begitu produk telah diberikan kepada pengguna, masalah biasanya timbul yang mengharuskan Anda mengembangkan rilis baru, memperbaiki beberapa masalah, atau menyelesaikan fitur yang ditunda.

RUP Architecture

Iterative Development
Business Value is delivered incrementally in
time-boxed cross-discipline iterations.




Static Strukture
    Bagaimana setiap elemen RUP dapat bekerja bersamaan.

RUP Workflow

Workflow yaitu pengelompokan kegiatan yang sering dilakukan "bersama" untuk menghasilkan hasil yang spesifik.


(Contoh workflow)

Core Workflow :
  • Bussiness modeling workflow.
  • Requirements workflow.
  • Analysis & Design workflow.
  • Implementation workflow.
  • Test workflow.
  • Deployment workflow.

Berikutnya masih bagian dari RUP, yaitu UML (Unified Modeling Language)



UML (Unified Modeling Language) adalah bahasa standart untuk melakukan spesifikasi, visualisasi, konstruksi, dan dokumentasi dari komponen - komponen perangkat lunak, dan digunakan untuk pemodelan bisnis.
UML biasanya menggunakan notasi grafis untuk menyatakan suatu desain. Permodelan dengan UML berarti menggambarkan yang ada dalam dunia nyata ke dalam bentuk yang dapat dipahami dengan menggunakan notasi standart UML.

Tujuan dari penggunaan UML, yaitu :
  • Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemograman dan proses rekayasa.
  • Menyatukan praktek - praktek terbaik yang terdapat dalam pemodelan.
  • Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
Diagram pada UML dibagi menjadi 2, yaitu :
  • Diagram struktural / Structure diagram.
  • Diagram perilaku system / Behavior diagram.
(Diagram - diagram pada UML)

Penjelesan singkat dari diagram tsb antara lain.
Nama DiagramDigunakan untukDigunakan pd tahapan:
 Diagram ClassMenggambarkan hubungan antara model class dlm  system. Analysis, Design
Diagram statusDiagram status menjelaskan aliran kontrol dari satu status ke status lain. Status didefenisikan sebagai suatu kondisi dari suatu obyek yang ada dan perubahan yang terjadi sekiranya ada event yang terpicu..Analysis, Design
 Diagram AktivitasMenggambarkan hubungan  aliran kerja business  terlepas dari  classes, aliran  activitas dlm sebuah use case, atau  detail design dari method. Analysis, Design
 Diagram Use CaseMendapatkan persyaratan/kebutuhan  system dan menggambarkan hubungan antara system dgn lingkungan. Analysis
 Diagram sequenceMemodelkan prilaku objects dlm sebuah use case.
Focus pd urutan berdasar  waktu  dari sebuah activity.
 Analysis, Design

Diagram yang akan dibahas  hanya 4 diagram UML yang efektif biasa dipakai antara lain diagram use case , diagram sekuen, diagram class dan diagram aktifitas
Gambar berikut dibawah ini menggambarkan diagram diagram tsb  dan memperlihatkan bagaimana diagram yang satu membantu membentuk diagram yang lainnya.
Case (Computer-aided software engineering) Tools
Case tool adalah sejenis software untuk membuat  secara otomatis/wizard sebagian atau keseluruan proses depelopment sistem.
Untuk membuat berbagai diagram  UML  baik pada tahap analisis maupun design  digunakan  Case To0ls  diataranya   adalah ArgoUML, StartUML dan Astah Comunity.  Selain itu anda juga bisa menggunakan Ms Visio . Berikut ini gambar tampilan  salah satu case tool yaitu Astah Comunity :
(UML Tools)

Diagram Use Case
Diagram use case merupakan pemodelan untuk menggambarkan kelakuan (behavior) sistem  secara keseluran yang akan dibuat. Diagram use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem yang akan dibuat. Dengan pengertian yang cepat, diagram use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut.
Diagram Kelas
Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem.
Diagram Sequence
Diagram sekuen menggambarkan kelakuan/perilaku objek pada use case
dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan
diterima antar objek. Oleh karena itu untuk menggambar diagram sekuen
maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta
metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu.
Diagram Aktivitas
Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem.
sumber
contoh lengkap  analisis-design OOP :
– sistem ATM:


*Sekian tentang elemen - elemen pada ADSBO, maaf bila ada salah kata dan kekurangannya 😁