48
email Fasilkom|| 10/2/2018 PEMODELAN DENGAN UML

PEMODELAN DENGAN UML - dinus.ac.iddinus.ac.id/repository/docs/ajar/03_-_RPLL.2018_.Pemodelan_Dengan... · membangun dan mendokumentasikan artefak dari sistem perangkat lunak yang

Embed Size (px)

Citation preview

email Fasilkom|| 10/2/2018

PEMODELAN DENGAN UML

email Fasilkom|| 10/2/2018

Review

Bentukrepresentasiyang berbedamemberipertimbangankebutuhan-kebutuhansistem/ perangkat lunakdari berbagaisudut pandangyang berbeda

Elemen-elemen Model Analisis

email Fasilkom|| 10/2/2018

Pendekatan Model Analisis

Analisis Terstruktur Objek-objek data dimodelkan dengan cara

mendefinisikan atribut-atribut serta relasi-relasinya Memperlihatkan bagaimana caranya mereka

melakukan transformasi data saat objek-objek data mengalir di dalam sistem yang akan dikembangkan

Analisis Berorientasi Objek Berfokus pada pendefinisian kelas-kelas dan cara

bagaimana mereka saling bekerjasama satu denganyang lainnya

email Fasilkom|| 10/2/2018

Why Modeling?Modeling captures essential parts of the system

(James Rumbaugh)

Business Process Computer System

Visual Modeling is modeling usingstandard graphical notations

email Fasilkom|| 10/2/2018

OBJECT ORIENTED NOTATION

email Fasilkom|| 10/2/2018

Modeling

Analyse the problem-domain (Analisa Domain Permasalahan) simplify reality (menyederhanakan realita) capture requirements (menangkap kebutuhan) visualize the system in its entirety (menggambarkan

sistem secara keseluruhan) specify the structure and/or behaviour of the system

(menentukan struktur dan atau perilaku sistem)

Design the solution (Merancang Solusi) document the solution - in terms of its structure,

behaviour, etc (mendokumentasikan solusi, dalam hal struktur, perilaku,dll)

email Fasilkom|| 10/2/2018

What’s UML?

Unified Modeling Language (UML), merupakan standar untuk mendokumentasikan object-oriented systems

UML is a modeling language, not a methodology or process

UML dapat digunakan untuk memodelkan semuaproses dalam siklus hidup pengembangan(development life cycle)

email Fasilkom|| 10/2/2018

What’s UML?

UML menurut ketentuan Object Management Group (OMG):

"The Unified Modeling Language (UML) is a graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system.The UML offers a standard way to write a system's blueprints, including conceptual things such as business processes and system functions as well as concrete things such as programming language statements, database schemas, and reusable software components."

email Fasilkom|| 10/2/2018

What’s UML?

Unified Modeling Language (UML) adalah bahasagrafis untuk memvisualisasikan, menentukan, membangun dan mendokumentasikan artefak darisistem perangkat lunak yang intensif.

email Fasilkom|| 10/2/2018

What’s UML?

UML menawarkan cara standar untuk menulis cetakbiru sistem, termasuk hal-hal konseptual sepertiproses bisnis dan fungsi sistem serta hal-hal konkretseperti programming language statements, skemabasis data dan reusable software components

email Fasilkom|| 10/2/2018

What’s UML?

UML adalah suatu bahasa pemodelan untuk memvisualisasikan,menspesifiksi, konstruksi, dan mendokumentasikan artifak dari sistem perangkat lunak

UML adalah suatu alat komunikasi untuk team danpara stakeholders

email Fasilkom|| 10/2/2018

What’s UML?

Suatu gambar bernilai seribu kata kata; notasi grafis mengartikulasikan dan jelas mengkomunikasikan pandangankeseluruhan sistem (masalah-domain).

email Fasilkom|| 10/2/2018

What’s UML?

UML menyediakan cara untuk memodelkan secara tepat, jelas dan lengkap, yang sistem pertanyakan.

email Fasilkom|| 10/2/2018

What’s UML?

Model yang dibangun dengan UML memiliki dimensi "desain“ untuk dapat diimplementasikan dalam bahasa pemrograman

email Fasilkom|| 10/2/2018

What’s UML?

Setiap proyek perangkat lunak melibatkan banyak dokumentasi dari fase awal sampai pengiriman

email Fasilkom|| 10/2/2018

Notasi & Semantik Domain Pada UML(1)

UML mendefinisikan notasi dan semantik untuk domain berikut:

The User Interaction or Use Case Model - menjelaskanbatas dan interaksi antara sistem dan pengguna. Sesuaidengan beberapa hal yang menjadi persyaratan sistem.

The Interaction or Communication Model - menjelaskanbagaimana objek dalam sistem akan berinteraksi satusama lain supaya pekerjaan dapat diselesaikan.

email Fasilkom|| 10/2/2018

The State or Dynamic Model - Diagram state menjelaskan perubahan status dan kondisi setiapclass selama proses. Sedangkan Diagram Activity menjelaskan alur kerja sistem yang akan dilakukan.

The Logical or Class Model - menjelaskan kelas danobjek yang akan membentuk sistem.

Notasi & Semantik Domain Pada UML(2)

email Fasilkom|| 10/2/2018

The Physical Component Model - menggambarkanperangkat lunak (dan kadang-kadang komponenhardware) yang membentuk sistem.

The Physical Deployment Model - menggambarkanarsitektur fisik dan penyebaran komponen padaarsitektur hardware tersebut.

Notasi & Semantik Domain Pada UML(3)

email Fasilkom|| 10/2/2018

UML 2.0

UML version 2.0 has 14 diagrams in 2 major groups:1. Structure Diagrams2. Behavior Diagrams

email Fasilkom|| 10/2/2018

UML 2.0 Diagram

email Fasilkom|| 10/2/2018

UML Structure Diagrams

Structural diagram mendefinisikan arsitektur statisdari sebuah model. Diagram ini digunakan untukmemodelkan ‘hal-hal’ yang membentuk model, yaitukelas, obyek, antarmuka dan komponen fisik.

Diagram ini juga digunakan untuk memodelkan relasidan ketergantungan antar elemen.

email Fasilkom|| 10/2/2018

UML Structure Diagrams

Mewakili data dan hubungan statis padasistem informasi yang meliputi diagram:1. Class Diagram2. Object Diagram3. Package Diagram4. Deployment Diagram5. Component Diagram6. Composite Structure Diagram

email Fasilkom|| 10/2/2018

UML Behavior Diagrams

Behavior diagrams menangkap berbagai variasiinteraksi dan status yang terjadi seketika dalam model seperti ‘jalankan’ dari waktu ke waktu; melacakbagaimana sistem akan bertindak pada lingkungannyata, dan mengamati efek dari sebuah operasi atauperistiwa, termasuk hasil-hasilnya.

email Fasilkom|| 10/2/2018

UML Behavior Diagrams

Menggambarkan hubungan dinamis antaraobjek yang mewakili sistem informasi bisnis

1. Activity Diagram2. Sequence Diagram3. Communication Diagram4. Interaction Diagram

5. Timing Diagram6. Behavior State Machine7. Protocol State Machine8. Use Case Diagrams

email Fasilkom|| 10/2/2018

USE CASE SCENARIO

email Fasilkom|| 10/2/2018

Contoh Skenario

Contoh: sebuah toko online berbasis web, kita memiliki skenario Buy a Product (membeli suatu produk) dengan deskripsi

Pelanggan melihat-lihat katalog dan menambahkan barang-barang yang diinginkan ke dalam keranjang belanja. Pada saat pelanggan tersebut ingin membayar, pelanggan menjabarkan tentang informasi pengiriman barang dan kartu kredit serta mengkonfirmasi transaksi. Sistem kemudian memeriksa otoritas pada kartu kredit lalu mengkonfirmasi transaksi secara langsung dan mengirim email tindak lanjut

email Fasilkom|| 10/2/2018

Skenario di atas memiliki tujuan yaitu membeli suatu produk

Walaupun dalam melakukan otoritasi pada kartu kredit mungkin bisa saja gagal.

Mungkin juga konsumennya merupakan member dan tidak perlu mengirim informasi pengiriman barang dan kartu kredit

Tujuan pengguna merupakan kunci sukses sebuah use case

Contoh Skenario

email Fasilkom|| 10/2/2018

How to write a use case

Capture a summary use case An overview in a sentence

Identify actors and their goals Actors can be people, systems, organisations Stakeholders and their interests

Write success scenario as steps Define exceptions to each step

email Fasilkom|| 10/2/2018

Contoh Use Case Summary

Contoh Use Case Summary membeli suatu product: Pelanggan melihat-lihat katalog dan menambahkan barang-barang yang diinginkan ke dalam keranjang belanja

email Fasilkom|| 10/2/2018

Skenario Keberhasilan Utama (Main Success Scenario)

Skenario Keberhasilan Utama:1. Pelanggan melihat-lihat katalog dan memilih barang

untuk dibeli2. Pelanggan memeriksa 3. Pelanggan mengisi informasi pengiriman barang4. Sistem menampilkan informasi seluruh harga, termasuk

pengiriman5. Pelanggan mengisi informasi kartu kredit6. Sistem mengotorisasi pembelian7. Sistem mengkonfirmasi penjualan secara lengsung8. Sistem mengirim e-mail konfirmasi ke pelanggan

email Fasilkom|| 10/2/2018

Ekstensi3a: Konsumen adalah member1. Sistem menampilkan informasi pengiriman barang2. Pelanggan dapat menerima atau menghiraukan ini,

kembali ke nomer 66a: Sistem gagal mengotorisasi pembelian kredit- Pelanggan dapat memasukkan kembali informasi

kartu kredit atau membatalkan

email Fasilkom|| 10/2/2018

USE CASE DIAGRAM

email Fasilkom|| 10/2/2018

Use Case

Use Case Diagram menceritakan apa yang sistem akan lakukan (what the system will do)

Menekankan “apa” yang diperbuat sistem, danbukan “bagaimana”

Menggambarkan fungsionalitas yang diharapkandari sebuah sistem

Menggambarkan kebutuhan sistem dari sudut pandang pengguna (user)

email Fasilkom|| 10/2/2018

Use Case Diagram Syntax

Use case diagram terdiri dari:

Use case

Actors

Relationship

System boundary boxes

Use case

email Fasilkom|| 10/2/2018

Use Case Diagram

Pengguna

Sistem ATM

Memasukkan Kartu Memasukkan PIN

Mengecek Saldo

Mentransfer Uang

Mengambil UangMelakukan Logout

«include»

Use Case Diagram

email Fasilkom|| 10/2/2018

Use Case

Use case dinotasikan dengan gambar horizontal ellips

A major piece of system functionality Ditempatkan di dalam system boundary Use case biasanya menggunakan kata kerja

Use Case

email Fasilkom|| 10/2/2018

Actor

Actor Actor menggambarkan orang, sistem lain yang

berhubungan dengan sistem saat ini Actor is a role, not a specific user Indikasi <<system>> untuk sebuah actor yang

merupakan sebuah sistem

<<system>>Actor

email Fasilkom|| 10/2/2018

System Boundary

Tulis nama sistem di atas dalam kotak / boundary Menampilkan batasan sistem (scope of the system) Actors are outside the scope of the system

System

email Fasilkom|| 10/2/2018

Relationship

Jenis relasi yang biasa digunakan pada use case diagram, meliputi:

Association Relationship

Include Relationship

Extend Relationship

Generalization Relationship

<<includes>>

<<extends>>

email Fasilkom|| 10/2/2018

Association Relationship

Link antar aktor dan Use Case

Dapat menggunakan tanda (*) untuk menunjukkan"multiplicity of the Association"

* *

email Fasilkom|| 10/2/2018

Include Relationship

Pemanggilan / penyertaan use case lain yang wajib / diharuskan (required) pada sistem

Tanda panah terbuka mengarah ke sub use case

include Memasukkan PIN

MemasukkanKartu

email Fasilkom|| 10/2/2018

Extend Relationship

Perluasan dari use case jika terdapat kondisi atausyarat terpenuhi

Memperluas Use Case untuk memasukkan perilaku Opsional

Tanda panah terbuka mengarah ke parent/base use case

extends Membayar Denda

MengembalikanBuku

email Fasilkom|| 10/2/2018

Generalization Relationship

Generalization digambarkan dengan sebuahgaris berpanah tertutup pada salah satuujungnya yang menunjukkan lebih umum

Dapat digunakan pada use case dan actor

email Fasilkom|| 10/2/2018

Use Case Diagram with Specialized Actor(Generalization)

email Fasilkom|| 10/2/2018

Use Case Diagram for Appointment System

email Fasilkom|| 10/2/2018

Use Case Diagram with Specialized Actor

email Fasilkom|| 10/2/2018

Extend and Include Relationships, Generalization

email Fasilkom|| 10/2/2018