Top Banner
TIPS – SAD Dudy Fathan Ali S.Kom Unified Modeling Language TIPS Dudy Fathan Ali, S.Kom (DFA) 2014 CEP - CCIT Fakultas Teknik Universitas Indonesia
61

System Analysis and Design - Unified Modeling Language (UML)

Apr 14, 2017

Download

Technology

Dudy Ali
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: System Analysis and Design - Unified Modeling Language (UML)

TIPS – SAD Dudy Fathan Ali S.Kom

Unified Modeling LanguageTIPS

Dudy Fathan Ali, S.Kom (DFA)2014

CEP - CCITFakultas Teknik Universitas Indonesia

Page 2: System Analysis and Design - Unified Modeling Language (UML)

UML

TIPS – SAD Dudy Fathan Ali S.Kom

“Unified Modeling Language (UML) is a standard language for creating blueprints that depict the structure and design of the software system” – NIIT Courseware OOAD UML

RUANG LINGKUP UML• UML adalah bahasa untuk menspesifikasikan software.• UML adalah bahasa untuk memvisualisasikan software.• UML adalah bahasa untuk membangun software.• UML adalah bahasa untuk mendokumentasikan software.

Page 3: System Analysis and Design - Unified Modeling Language (UML)

Benefits of the Object Approach

TIPS – SAD Dudy Fathan Ali S.Kom

Page 4: System Analysis and Design - Unified Modeling Language (UML)

Unified Modeling Language, Version 2.0

TIPS – SAD Dudy Fathan Ali S.Kom

Page 5: System Analysis and Design - Unified Modeling Language (UML)

Diagram Yang Digunakan Untuk BIS

TIPS – SAD Dudy Fathan Ali S.Kom

UML menyediakan beberapa diagram untuk merepresentasikan struktur dan disain dari suatu software.

Usecase Diagram Class Diagram Object Diagram Sequence Diagram

State Machine DiagramActivity Diagram Collaboration

Diagram

Component Diagram

Deployment Diagram

Page 6: System Analysis and Design - Unified Modeling Language (UML)

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Use case diagram menggambarkan aktivitas yang dapat dilakukan oleh sistem dari sudut pandang user (pengguna sistem) sebagai pengguna (external observer) dan berhubungan dengan skenario-skenario yang dapat dilakukan oleh user.

• Use case diagram merupakan sekumpulan actor, use case dan komunikasi antar actor dengan use case.

Page 7: System Analysis and Design - Unified Modeling Language (UML)

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

1. AktorMerepresentasikan seseorang atau sesuatu (seperti perangkat, sistem lain) yang berinteraksi dengan sistem

2. UsecaseGambaran fungsionalitas

dari suatu sistem3. Association / Link

Menghubungkan usecase dengan aktor

4. SystemSistem yang sedang

dikembangkan

Page 8: System Analysis and Design - Unified Modeling Language (UML)

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi/HubunganPemaknaan relasi berbeda-beda, tergantung garis tersebut digambar dan tipe simbol apa yang digunakan untuk menghubungkan garis tersebut.

A. Generalisasi Aktor / UsecaseGeneralisasi pada actor dan use case dimaksudkan untuk meyederhanakan model dengan cara menarik keluar sifat-sifat pada actor maupun use case yang sejenis

Page 9: System Analysis and Design - Unified Modeling Language (UML)

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

B. Include RelationshipMengindikasikan bahwa fungsi dari satu usecase termasuk dalam fungsi lain. Include Relationship digunakan jika suatu usecase HARUS melibatkan usecase lainnya.

Page 10: System Analysis and Design - Unified Modeling Language (UML)

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

C. Extend RelationshipPerluasan dari use case lain jika kondisi atau syarat terpenuhi. Extend Relationship digunakan jika suatu usecase MUNGKIN SAJA melibatkan usecase lainnya.

Page 11: System Analysis and Design - Unified Modeling Language (UML)

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Identifikasilah Usecase Diagram Dibawah Ini :

Page 12: System Analysis and Design - Unified Modeling Language (UML)

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Buatlah usecase diagram untuk aplikasi penjadwalan shift kasir pada PT Adi Perkasa dengan fungsi sebagai berikut :

1. Aplikasi terbagi jadi 2 user, yaitu Admin dan Kasir yang merupakan pegawai dari PT Adi Perkasa

2. Admin memiliki hak akses sebagai berikut :a. Login kedalam sistemb. Mendaftarkan admin lainc. Mengelola jadwal kasird. Mencetak jadwal kasir keseluruhane. Mencetak jadwal kasir berdasarkan pencarian

3. Kasir memiliki hak akses sebagai berikut :a. Mencari jadwalb. Mencetak jadwal sesuai jadwal yang dicari

Migrating from requirements to design.

Page 13: System Analysis and Design - Unified Modeling Language (UML)

Usecase Description

TIPS – SAD Dudy Fathan Ali S.Kom

Use Case yang ada pada Usecase Diagram harus memiliki deskripsi mendetail untuk mempermudah dalam memahami Usecase Diagram tersebut.

Bagian dari Usecase Description :

Nama Usecase

Aktor

Deskripsi Usecase

Precondition

Langkah-langkah

Postcondition

Page 14: System Analysis and Design - Unified Modeling Language (UML)

Usecase Description

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh Use Case Description

Page 15: System Analysis and Design - Unified Modeling Language (UML)

Usecase Description

TIPS – SAD Dudy Fathan Ali S.Kom

Page 16: System Analysis and Design - Unified Modeling Language (UML)

Usecase Description

TIPS – SAD Dudy Fathan Ali S.Kom

Page 17: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Class diagram merupakan inti dari proses pemodelan objek. • Forward Engineering maupun Reverse Engineering memanfaatkan

diagram ini.• Class menggambarkan suatu grup yang memiliki kesamaan keadaan dan

prilaku. • Class merupakan blueprint dari object dalam sistem berorientasi object.• Class Diagram dinotasikan dengan bentuk kotak dan memiliki 3

compartment.1. Compartment pertama berisi nama class2. Compartment kedua berisi atribut pada class3. Compartment ketiga berisi operasi pada class

Pengertian Class Diagram

Page 18: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Page 19: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Atribut pada Class Diagram

• Atribut adalah rincian dari suatu class, misalnya warna mobil, jumlah pintu, bentuk dan sebagainya.

• Berikut adalah cara penulisan Atribut pada class diagram :

Page 20: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Atribut pada Class Diagram

• Visibility : Menjelaskan access specifier dari atribut. Contoh : public (+), private (-), protected (#), package (~)

• Name : Nama dari atribut• Type : Tipe data dari atribut• Multiplicity : Menjelaskan berapa nilai yang bisa ditampung dalam atribut.• Default : Nilai default dari atribut• Property-String : Properti dari atribut. (optional)

Page 21: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Atribut pada Class Diagram

Page 22: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Operasi pada Class Diagram

• Visibility Menjelaskan access specifier dari nama Method.

• Name Nama dari Method.

• Parameter-List Parameter yang dibutuhkan oleh Method.

• Return-Type Return Type yang dimiliki oleh Method.

• Property-String Property dari method. (Optional)

Page 23: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Operasi pada Class Diagram

Page 24: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi pada Class DiagramHubungan antara satu class dengan class lain mempermudah kita dalam melihat mekanisme suatu sistem. Tiap relationship mempunyai tipe yang berbeda, yaitu:

1. AssociationMerupakan hubungan statis antar class. Secara default, association bersifat dua arah (bidirectional).

Association bisa juga bersifat bersifat unidirectional.

Page 25: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi pada Class DiagramAssociation dibagi menjadi 2 jenis :

1. Aggregation (Agregasi)Ketergantungan yang lemah antara dua class, dimana class A adalah bagian dari class B, namun class A bisa berdiri sendiri.

2. Composition (Komposisi)Ketergantungan yang kuat antara dua class dimana class A berisi class B dan juga mengatur lifetime dari class B. Class A menentukan ada tidaknya class B.

Page 26: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi pada Class Diagram

2. MultiplicityMenyatakan jumlah instance yang terlibat dalam hubungan Asosiasi Tersebut. Multiplicity dibagi menjadi 4 :

1. One (1)Menyatakan bahwa hanya ada 1 object yang berhubungan dengan Class lain.

2. Zero or One (0..1)Menyatakan bahwa ada 0 atau 1 object yang berhubungan dengan Class lain.

3. Many (0..*)Menyatakan bahwa ada 0 atau banyak object yang berhubungan dengan

Class lain.4. One or More (1..*)

Menyatakan bahwa ada 1 atau banyak object yang berhubungan dengan Class lain.

Page 27: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi pada Class Diagram

Contoh penggunaan Multiplicity pada Class Diagram :

Page 28: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi pada Class Diagram

3. DependencyDepedency adalah hubungan antar class di mana sebuah class memiliki

ketergantungan pada class lainnya tetapi tidak sebaliknya. (lebih kepada suatu class yang harus menggunakan class lainnya)

Page 29: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi pada Class Diagram4. Generalization

Menggambarkan hubungan antara super class dengan sub class. Super class disebut class dasar sedangkan sub class disebut dengan class turunan.

Generalisasi adalah hubungan pewarisan (inheritance) antar unsur dalam class diagram. Pewarisan memungkinkan suatu kelas mewarisi semua atribut, operasi, relasi dari kelas yang berada dalam hirarki pewarisannya.

Page 30: System Analysis and Design - Unified Modeling Language (UML)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh Class Diagram

Page 31: System Analysis and Design - Unified Modeling Language (UML)

Object Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Pengertian Object Diagram• Untuk mewakili elemen statis yang ada pada perangkat lunak digunakan

class diagram, untuk menggambarkan instance dari elemen statis tersebut digunakan object diagram. Dengan kata lain, object diagram menggambarkan property dari instance tertentu pada sebuah class.

• Object Diagram dinotasikan dengan kotak yang dibagi dalam 2 compartment• Compartment pertama berisi nama object dan class.• Comparment kedua berisi atribut dan value dari object.

Page 32: System Analysis and Design - Unified Modeling Language (UML)

Sequence Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Pengertian Sequence Diagram• Menggambarkan interaksi antar objek di dalam dan di sekitar sistem 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 respons dari sebuah event untuk menghasilkan output tertentu.

Page 33: System Analysis and Design - Unified Modeling Language (UML)

Sequence Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Ketika sebuah object memanggil method yang ada pada dirinya sendiri atau menerima callback dari object yang lain, control akan digambarkan dengan control yang sudah ada dan disebut dengan nested focus of control.

Page 34: System Analysis and Design - Unified Modeling Language (UML)

Collaboration Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Pengertian Collaboration Diagram• Mewakili interaksi antara object-object dalam bentuk pesan.• Collaboration diagram juga menggambarkan interaksi antar objek seperti

sequence diagram, tetapi lebih menekankan pada peran masing-masing objek dan bukan pada waktu penyampaian message.

Page 35: System Analysis and Design - Unified Modeling Language (UML)

Collaboration Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh Collaboration Diagram• Berikut ini adalah contoh dari collaboration diagram :

Page 36: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Pengertian State Machine Diagram

• State Machine Diagram adalah teknik yang umum digunakan untuk menggambarkan behaviour sebuah sistem. Hal ini digunakan untuk membantu analis, perancang dan pengembang untuk memahami perilaku obyek pada sistem.

• State Machine Diagram digunakan untuk memodelkan behavior/methode (lifecycle) sebuah kelas atau object dan memperlihatkan urutan kejadian sesaat (state) yang dilalui sebuah object atau transisi dari sebuah state ke state lainnya.

Page 37: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh State Machine Diagram 2 :

Page 38: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh State Machine Diagram 1 :

Page 39: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :

State dinotasikan seperti kotak dengan ujung yang tumpul disetiap sudutnya. State mengambarkan kondisi yang terjadi.

Page 40: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :

• Initial State dinotasikan dengan bentuk bulat dan berwarna hitam full. Menggambarkan awal dari kondisi/keadaan.

• Final State dinotasikan dengan bentuk bulat putih dan memiliki titik hitam didalamnya. Menggambarkan akhir dari kondisi/keadaan.

Page 41: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :

• Transisi dari state awal ke state selanjutnya digambarkan dengan tanda panah.

• Trigger adalah kondisi yang harus terpenuhi untuk masuk ke state selanjutnya.

• Effect adalah penyebab dari transisi ke state selanjutnya.

Page 42: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :

• Entry menggambarkan apa yang dilakukan object pada saat masuk kedalam state.

• Exit menggambarkan apa yang dilakukan object pada saat keluar dari state.

Page 43: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :• Sebuah state

machine diagram mungkin saja memiliki sub-machine diagram seperti pada gambar disamping.

Page 44: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :• Cara lain untuk

menggambarkan sub-machine diagram.

• Simbol yang ada pada check pin adalah simbol yang menandakan bahwa proses yang ada didalam check pin akan digambarkan pada diagram yang berbeda.

Page 45: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :

• Apabila didalam suatu state dimungkinkan memiliki lebih dari 1 kondisi exit. Maka anda bisa menggunakan exit point seperti yang dijelaskan pada gambar diatas.

Page 46: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Simbol :

• Penggunaan Join dan Fork juga diperbolehkan apabila ada state yang bisa berjalan secara merangkap.

Page 47: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Page 48: System Analysis and Design - Unified Modeling Language (UML)

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Page 49: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Pengertian :• Package Diagram digunakan untuk mengambarkan pengelompokan berdasarkan

class, atau usecase.• Package diagram bisa menggambarkan ketergantungan antar bagian dalam suatu

sistem dan bermanfaat dalam mencari letak kesalahan ketika proses kompilasi. • Package digambarkan dengan rectangle yang menyerupai sebuah folder. • Implementasi package pada java adalah penggunaan Package, dan pada C#

adalah penggunaan Namespace.

Page 50: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Cara Menentukan Package :• Kriteria yang bisa dilakukan untuk mengimplementasikan package diagram

berdasarkan Use Case adalah :• Berdasarkan Ciri-ciri Use Casenya.• Berdasarkan Aktornya.

Page 51: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Kriteria yang bisa dilakukan untuk mengimplementasikan package diagram berdasarkan Use Case adalah :• Berdasarkan Ciri-ciri Use Casenya.• Berdasarkan Aktornya.

Cara Menentukan Package :

Page 52: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Kriteria yang bisa dilakukan untuk mengimplementasikan package diagram berdasarkan Class adalah :• Berdasarkan hubungan inheritance.• Berdasarkan hubungan composition.• Berdasarkan hubungan collaborate.

Cara Menentukan Package :

Page 53: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Kriteria yang bisa dilakukan untuk mengimplementasikan package diagram berdasarkan Class adalah :• Berdasarkan hubungan inheritance.• Berdasarkan hubungan composition.• Berdasarkan hubungan collaborate.

Cara Menentukan Package :

Page 54: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Kriteria yang bisa dilakukan untuk mengimplementasikan package diagram berdasarkan Class adalah :• Berdasarkan hubungan inheritance.• Berdasarkan hubungan composition.• Berdasarkan hubungan collaborate. (Berinteraksi dengan kelas lain untuk

melaksanakan usecase)

Cara Menentukan Package :

Page 55: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Hubungan Antar Package :• Antara Package yang satu dengan yang lain memiliki keterkaitan yang berbeda-

beda, dibagi menjadi 2 jenis :• Dependency• Generalization

Page 56: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Antara Package yang satu dengan yang lain memiliki keterkaitan yang berbeda-beda, dibagi menjadi 2 jenis :• Dependency• Generalization

Hubungan Antar Package :

Page 57: System Analysis and Design - Unified Modeling Language (UML)

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Page 58: System Analysis and Design - Unified Modeling Language (UML)

Component Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

• Component diagram menggambarkan struktur dan hubungan antar komponen, termasuk ketergantungan (dependency) diantaranya.

• Hubungan komponen dengan class adalah bahwa component merupakan subsistem berisi class yang bekerja sama merealisasikan antarmuka yang di instruksikan.

• Terdapat tiga jenis model komponen, yaitu : • Deployment Component

• Berisi component dalam bentuk executable system, misalnya Dynamic Link Libraries (DLLs) dan executable (EXEs) untuk mengeksekusi sebuah system.

• Work Product Component• Berisi komponen yang merupakan hasil dari fase implementasi

pada proses SDLC, misalnya file source code dan data file. • Execution Component

• Berisi komponen yang dibuat ketika system dieksekusi, misalnya object COM+ yang merupakan instance dari DLL.

Page 59: System Analysis and Design - Unified Modeling Language (UML)

Component Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Component dinotasikan dengan persegi panjang dengan tab. Masing-masing komponen mempunyai nama.

Page 60: System Analysis and Design - Unified Modeling Language (UML)

Component Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Kita bisa menggambarkan class yang berada di dalam component dan relationship antara class tersebut dengan component diagram.

Page 61: System Analysis and Design - Unified Modeling Language (UML)

TIPS – SAD Dudy Fathan Ali S.Kom

Terima KasihDudy Fathan Ali S.Kom

[email protected]