System Analysis and Design - Unified Modeling Language (UML)

Post on 14-Apr-2017

55 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

Transcript

TIPS – SAD Dudy Fathan Ali S.Kom

Unified Modeling LanguageTIPS

Dudy Fathan Ali, S.Kom (DFA)2014

CEP - CCITFakultas Teknik Universitas Indonesia

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.

Benefits of the Object Approach

TIPS – SAD Dudy Fathan Ali S.Kom

Unified Modeling Language, Version 2.0

TIPS – SAD Dudy Fathan Ali S.Kom

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

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.

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

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

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.

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.

Usecase Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Identifikasilah Usecase Diagram Dibawah Ini :

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.

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

Usecase Description

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh Use Case Description

Usecase Description

TIPS – SAD Dudy Fathan Ali S.Kom

Usecase Description

TIPS – SAD Dudy Fathan Ali S.Kom

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

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

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 :

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)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Atribut pada Class Diagram

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)

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Operasi pada Class Diagram

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.

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.

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.

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Relasi pada Class Diagram

Contoh penggunaan Multiplicity pada Class Diagram :

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)

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.

Class Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh Class Diagram

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.

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.

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.

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.

Collaboration Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

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

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.

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh State Machine Diagram 2 :

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

Contoh State Machine Diagram 1 :

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.

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.

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.

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.

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.

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.

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.

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.

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

State Machine Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

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.

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.

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 :

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 :

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 :

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 :

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

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 :

Package Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

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.

Component Diagram

TIPS – SAD Dudy Fathan Ali S.Kom

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

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.

TIPS – SAD Dudy Fathan Ali S.Kom

Terima KasihDudy Fathan Ali S.Kom

dudy.fathan@eng.ui.ac.id

top related