Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

U M L UNIFIED MODELING LANGUAGE APSI – Noveriza Yuliasari, MT Sesi 08.

Presentasi serupa


Presentasi berjudul: "U M L UNIFIED MODELING LANGUAGE APSI – Noveriza Yuliasari, MT Sesi 08."— Transcript presentasi:

1 U M L UNIFIED MODELING LANGUAGE APSI – Noveriza Yuliasari, MT Sesi 08

2 UNIFIED MODELLING LANGUAGE  Unified Modelling Language (UML) adalah sebuah "bahasa" yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem informasi atau piranti lunak.  UML menawarkan sebuah standar untuk merancang model sebuah sistem.  Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik.

3 UML(2)  Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak.  Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan.  Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object- Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).

4 UML(3)  UML (Unified Modeling Language) merupakan metode pemodelan secara visual sebagai sarana untuk merancang dan atau membuat software berorientasi objek.  UML ini merupakan bahasa visual untuk pemodelan bahasa berorientasi objek, maka semua elemen dan diagram berbasiskan pada paradigma object oriented.  UML adalah salah satu tool/model untuk merancang pengembangan software yang berbasis object oriented.  UML sendiri juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan dalam sistem software. 4 APSI | Sesi 08 | Noveriza Yuliasari, MT

5  UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database. 5 APSI | Sesi 08 | Noveriza Yuliasari, MT UML(4)

6 UML Derivative OOD OMT OOSE

7

8

9

10 legend Analysis and Design Process Activity/Sequence Diagram Component Diagram State Chart Class Diagram Use Case Model System requirements Deployment Diagram Structural Behavioral Zachman Framework

11 System Development

12 Diagram Dalam UML  UML terdiri atas pengelompokan diagram-diagram sistem menurut aspek atau sudut pandang tertentu.  Diagram: menggambarkan permasalahan maupun solusi dari permasalahan suatu model.  UML mempunyai 9 diagram, yaitu; Diagram Use Case Diagram Class Diagram Package Diagram Sequence Diagram Collaboration Diagram State Chart Diagram Activity Diagram Deployment 12 APSI | Sesi 08 | Noveriza Yuliasari, MT

13 13

14 1. Diagram Use Case  Diagram Use Case: menggambarkan apa saja aktifitas yang dilakukan oleh suatu sistem dari sudut pandang pengamatan luar  Yang menjadi persoalan apa yang dilakukan bukan bagaimana melakukannya.  Diagram Use Case dekat kaitannya dengan kejadian-kejadian. 14 APSI | Sesi 08 | Noveriza Yuliasari, MT

15 …use case  Kejadian (scenario) merupakan contoh apa yang terjadi ketika seseorang berinteraksi dengan sistem. untuk lebih memperjelas lihat gambaran suatu peristiwa untuk sebuah klinik kesehatan di bawah ini : “Pasien menghubungi klinik untuk membuat janji (appointment) dalam pemeriksaan tahunan. Receptionist mendapatkan waktu yang luang pada buku jadwal dan memasukkan janji tersebut ke dalam waktu luang itu.” 15 APSI | Sesi 08 | Noveriza Yuliasari, MT

16 …Use Case Diagram Use Case berguna dalam tiga hal : 1. Menjelaskan fasilitas yang ada (requirements) Use Case baru selalu menghasilkan fasilitas baru ketika sistem dianalisa, dan desain menjadi lebih jelas. 2. Komunikasi dengan klien Penggunaan notasi dan simbol dalam diagram Use Case membuat pengembang lebih mudah berkomunikasi dengan kliennya. 3. Membuat tes dari kasus-kasus secara umum Kumpulan dari kejadian-kejadian untuk Use Case bisa dilakukan test kasus layak untuk kejadian-kejadian tersebut. 16 APSI | Sesi 08 | Noveriza Yuliasari, MT

17 Simbol Use Case SimbolDeskripsi Use CaseFungsionalitas yang disediakan sistem sebagai unit- unit yang saling bertukar pesan antar unit atau aktor. Aktor/ActorOrang, proses atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri. System BoundaryMerepresentasikan batasan antara sistem fisik dan aktor yang berinteraksi dengan sistem fisik tersebut. Asosiasi/associationKomunikasi antara aktor dan use case yang berpartisipasi pada use case atau use case memiliki interaksi dengan aktor

18 …Simbol use case APSI | Sesi 08 | Noveriza Yuliasari, MT 18 SimbolDeskripsi GeneralisasiHubungan generalisasi dan spesifikasi (umum-khusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari yang lainnya. ExtendRelasi use case tambahan ke use case dimana use case yang ditambahkan dapat berdiri sendiri walaupun tanpa use case tambahan itu. IncludeRelasi use case tambahan ke sebuah use case dimana use case yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat dijalankan use case ini >

19 Catatan: APSI | Sesi 08 | Noveriza Yuliasari, MT 19  Use case biasanya dinyatakan dengan menggunakan kata kerja diawal dan diawal frase  Actor walaupun diwakili dengan simbol orang, tapi aktor belum tentu merupakan orang. Biasanya dinyatakan menggunakan kata benda di awal di frase nama aktor

20 ..Contoh use case  Contoh kegiatan pasien yang membuat janji 20 APSI | Sesi 08 | Noveriza Yuliasari, MT

21 Gold Card CustomerRegular Customer Generalizes Relationships Customer Rent Vehicle Communication Relationships Menyusun asuransi tambahan

22 Contoh: Use Case Diagram

23

24 2. Diagram Activity  Diagram aktivitas atau activity menggambarkan workflow (aliran kerja) dari suatu sistem atau proses bisnis.  Yang perlu diperhatikan!  Aktivity diagram menggambarkan aktivitas yang dilakukan oleh sistem bukan apa yang dilakukan oleh actor!  Jadi merupakan aktivitas yagn dapat dilakukan oleh sistem 24 APSI | Sesi 08 | Noveriza Yuliasari, MT

25 Diagram Activity  Sebagai contoh, perhatikan proses yang terjadi. “Pengambilan uang dari bank melalui ATM.”  Ada tiga aktifitas kelas (orang, dan lainnya) yang terkait, yaitu : Customer, ATM, and Bank.  Proses berawal dari lingkaran start hitam pada bagian atas dan berakhir di pusat lingkaran stop hitam/putih pada bagian bawah. Aktifitas digambarkan dalam bentuk kotak persegi.  Lihat gambar di slide selanjutnya, agar lebih jelas : 25 APSI | Sesi 08 | Noveriza Yuliasari, MT

26 Ketentuan  Diagram Activity dapat dibagi menjadi beberapa jalur kelompok yang menunjukkan obyek yang mana yang bertanggung jawab untuk suatu aktifitas.  Peralihan tunggal (single transition) timbul dari setiap adanya activity (aktifitas), yang saling menghubungi pada aktifitas berikutnya.  Sebuah transition (transisi) dapat membuat cabang ke dua atau lebih percabangan exclusive transition (transisi eksklusif).  Label Guard Expression (ada di dalam [ ]) yang menerangkan output (keluaran) dari percabangan. Percabangan akan menghasilkan bentuk menyerupai bentuk intan.  Transition bisa bercabang menjadi beberapa aktifitas paralel yang disebut Fork.  Fork beserta join (gabungan dari hasil output fork) dalam diagram berbentuk solid bar (batang penuh). 26 APSI | Sesi 08 | Noveriza Yuliasari, MT

27 27 No.ElemenSimbol 1Status awal 2Aktifitas 3Percabangan / decision 4Penggabungan / join 5Status akhir 6Swimlane

28 APSI | Sesi 08 | Noveriza Yuliasari, MT 28

29 3. Diagram Sequence  Diagram Sequence merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukan; message (pesan) apa yang dikirim dan diterima serta waktu pelaksanaannya.  Diagram ini diatur berdasarkan waktu. Obyek- obyek yang berkaitan dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang terurut. 29 APSI | Sesi 08 | Noveriza Yuliasari, MT

30 30  Suatu sequence diagram adalah suatu penyajian perilaku yang tersusun sebagai rangkaian langkah- langkah percontohan dari waktu ke waktu.  Sequence diagram digunakan untuk menggambarkan arus pekerjaan, pesan yang sampaikan dan bagaimana elemen-elemen di dalamnya bekerja sama dari waktu ke waktu untuk mencapai suatu hasil.  Masing – masing urutan elemen diatur di dalam suatu urutan horisontal, dengan pesan yang disampaikan dibelakang dan didepan diantara elemen-elemen.

31 Ketentuan: APSI | Sesi 08 | Noveriza Yuliasari, MT 31  Banyaknya diagram sekuen yang harus digambarkan adalah sebanyak pendefinisian usecase yang memiliki proses sendiri atau,  Semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada diagram sekuen sehinga semakin banyak use case yang didefinisikan maka diagram sekuen yang harus dibuat juga semakin banyak.

32 APSI | Sesi 08 | Noveriza Yuliasari, MT 32 No.ElemenSimbol 1Aktor 2 Objek dan Garis Hidup(lifeline) 3Waktu aktif 4Pesan tipe create 5Pesan tipe call 6Pesan tipe send 7Pesan tipe return

33 Contoh Sequence Diagram APSI | Sesi 08 | Noveriza Yuliasari, MT 33

34 4.Diagram Class  Diagram Class memberikan pandangan secara luas dari suatu sistem dengan menunjukkan kelas- kelasnya dan hubungan mereka.  Diagram Class bersifat statis; menggambarkan relasi apa yang terjadi bukan apa yang terjadi jika mereka berelasi. 34 APSI | Sesi 08 | Noveriza Yuliasari, MT

35 Komponen dari Class Diagram APSI | Sesi 08 | Noveriza Yuliasari, MT 35  Nama Class  Atribbut  Operasi

36 Relationship  Diagram Class mempunyai 3 macam relationship (hubungan), sebagai berikut : 1. Association Suatu hubungan antara dua kelas. Terjadi association antara dua kelas jika salah satu bagian dari kelas mengetahui yang lainnya dalam melakukan suatu kegiatan. Di dalam diagram, sebuah association adalah penghubung yang menghubungkan dua kelas. 2. Aggregation Suatu association dimana salah satu kelasnya merupakan bagian dari suatu kumpulan. Aggregation memiliki titik pusat yang mencakup keseluruhan bagian. Sebagai contoh : OrderDetail merupakan kumpulan dari Order. 36 APSI | Sesi 08 | Noveriza Yuliasari, MT

37 …Relationship 3. Generalization Suatu hubungan turunan dengan mengasumsikan satu kelas merupakan suatu superClass (kelas super) dari kelas yang lain. Generalization memiliki tingkatan yang berpusat pada superClass. Contoh : Payment adalah superClass dari Cash, Check, dan Credit.  Untuk tambahan bahwa association mempunyai 2 titik. Salah satu titik bisa memiliki label untuk menjelaskan association tersebut. Contoh : OrderDetail adalah line item untuk setiap permintaan. 37 APSI | Sesi 08 | Noveriza Yuliasari, MT

38 Diagram Class  Panah navigability (pengatur alur arah) dalam suatu association menggambarkan arah mana association dapat ditransfer atau disusun.  Seperti dalam contoh : OrderDetail dapat disusun dari item-nya, namun tidak bisa sebaliknya. Panah ini juga menjelaskan siapa “memiliki” implementasi dari association; dalam kasus ini OrderDetail memiliki Item. Association tanpa arah panah merupakan bidirectional (bolak-balik). 38 APSI | Sesi 08 | Noveriza Yuliasari, MT

39 Multiplicity  Multiplicity dari suatu titik association adalah angka kemungkinan bagian dari hubungan kelas dengan single instance (bagian) pada titik yang lain.  Multiplicity berupa single number (angka tunggal) atau range number (angka batasan).  Pada contoh, hanya bisa satu ‘Customer’ untuk setiap ‘Order’, tapi satu ‘Customer’ hanya bisa memiliki beberapa ‘Order’. 39 APSI | Sesi 08 | Noveriza Yuliasari, MT

40 40

41 Contoh  Setiap diagram Class memiliki Class (kelas), association, dan multiplicity.  Sedangkan navigability (alur arah) dan role (kegiatan) merupakan optional (tidak diharuskan). Berikut adalah contoh diagram kelas: 41 APSI | Sesi 08 | Noveriza Yuliasari, MT

42 42

43 5. Object Diagram APSI | Sesi 08 | Noveriza Yuliasari, MT 43  Objek dalam konsep OOP masih memiliki keadaan dan sifat seperti halnya objek di dunia nyata, karena pada dasarnya objek dalam OOP merupakan representasi dari dunia nyata.  Objek dalam OOP merepresentasikan keadaan melalui variabel, sedangkan sifatnya direpresentasikan menjadi method.  Method merupakan suatu fungsi (sub-routine) yang berhubungan dengan objek.  Definisi: “objek merupakan penggabungan variabel- variabel dan method-method yang berhubungan dengannya.”

44 Simbol APSI | Sesi 08 | Noveriza Yuliasari, MT 44

45 APSI | Sesi 08 | Noveriza Yuliasari, MT 45

46 Perbedaan Objek dan Kelas APSI | Sesi 08 | Noveriza Yuliasari, MT 46  Setelah melalui penjelasan tentang objek dan Class di atas, kita bisa simpulkan perbedaan antara keduanya.  Class adalah sesuatu yang menjelaskan ciri-ciri secara umum dari suatu objek, termasuk apa-apa yang bisa dilakukan objek tersebut. Sedangkan objek adalah keadaan tertentu dari suatu kelas, atau sering juga disebut dengan instans dari kelas.  Mari kita simak kalimat singkat berikut untuk lebih memperdalam pemahaman kita tentang objek dan kelas:  “Seekor kucing Persia memiliki empat ekor anak.”

47 Contoh APSI | Sesi 08 | Noveriza Yuliasari, MT 47

48 6. Package  Untuk mengatur pengorganisasian diagram Class yang kompleks, dapat dilakukan pengelompokan kelas-kelas berupa package (paket-paket).  Package adalah kumpulan elemen-elemen logika UML.  Gambar di bawah ini mengenai model bisnis dengan pengelompokan kelas-kelas dalam bentuk paket-paket: 48 APSI | Sesi 08 | Noveriza Yuliasari, MT

49 7. Diagram Collaboration  Diagram Collaboration juga merupakan diagram interaction. Diagram membawa informasi yang sama dengan diagram Sequence, tetapi lebih memusatkan atau memfokuskan pada kegiatan obyek dari waktu pesan itu dikirimkan. 49 APSI | Sesi 08 | Noveriza Yuliasari, MT

50 Diagram Collaboration  Kotak kegiatan obyek diberi label dengan nama kelas atau obyek (atau keduanya). Nama kelas dibatasi dengan colons/titik dua ( : ).  Setiap pesan pada diagram Collaboration mempunyai angka yang terurut. Pesan yang tingkatannya tertinggi adalah angka 1.  Pesan yang berada pada tingkat yang sama memiliki prefix yang sama, namun suffix berbeda bergantung pada posisinya; hanya untuk angka 1, 2, dan seterusnya 50 APSI | Sesi 08 | Noveriza Yuliasari, MT

51 8. Diagram StateChart  Behaviors dan state dimiliki oleh obyek. Keadaan dari suatu obyek bergantung pada kegiatan dan keadaan yang berlaku pada saat itu.  Diagram StateChart menunjukkan kemungkinan dari keadaan obyek dan proses yang menyebabkan perubahan pada keadaannya.  Untuk lebih jelas, contoh yang digunakan model diagram untuk login yang merupakan bagian dari Online Banking System. Logging in terdiri atas masukan input Social Security Number dan Personal Id Number yang berlaku, lalu memutuskan kesahan dari informasi tersebut. 51 APSI | Sesi 08 | Noveriza Yuliasari, MT

52 8. Diagram StateChart  Logging in dapat dibagi menjadi 4 tahapan proses, yaitu : Getting SSN (masukkan SSN) Getting PIN (masukkan PIN) Validating (periksa kesahannya) Rejecting (keluar) 52 APSI | Sesi 08 | Noveriza Yuliasari, MT

53 53

54 Diagram StateChart  Proses peralihan digambarkan dengan panah dari satu state ke yang lainnya.  Event (peristiwa) atau condition (keadaan) yang menyebabkan perubahan dituliskan pada samping panah. Diagram ini mengandung dua self-transition (transisi sendiri), satu pada getting SSN dan lainnya pada getting PIN.  Keadaan awal Start (black circle/lingkar hitam) adalah dummy (model) untuk memulai action (kegiatan).  Keadaan akhir juga keadaan model yang menghentikan kegiatan.  Aksi yang terjadi sebagai hasil dari suatu peristiwa atau keadaan ditandai dalam bentuk/action.  Pada Validating State, obyek tidak menunggu peristiwa dari luar untuk menyebabkan suatu perubahan. Sebagai gantinya melakukan suatu activity (aktifitas). Hasil dari aktifitas tersebut menentukan keadaan berikutnya dari obyek tersebut. 54 APSI | Sesi 08 | Noveriza Yuliasari, MT

55 9. Komponen Diagram APSI | Sesi 08 | Noveriza Yuliasari, MT 55  Component diagram adalah diagram UML yang menampilkan komponen dalam system dan hubungan antara mereka.  Pada component View, akan difokuskan pada organisasi fisik system. Pertama, diputuskan bagaimana kelas-kelas akan diorganisasikan menjadi kode pustaka.  Kemudian akan dilihat bagaimana perbedaan antara berkas eksekusi, berkas dynamic link library (DDL), dan berkas runtime lainnya dalam system.

56 Simbol APSI | Sesi 08 | Noveriza Yuliasari, MT 56

57 APSI | Sesi 08 | Noveriza Yuliasari, MT 57 Komponen dasar pada sebuah sistem diantaranya  Komponen user interface yang menangani tampilan sistem  Komponen business processing yang menangani fungsi – fungsi proses bisnis  Komponen data yang menangani manipulasi data  Komponen security yang menangani keamanan sistem

58 Contoh 1 Package Component

59 Contoh 2 Package Component

60 Contoh 3 Mesin Message Queue Transaction Processor Accounting Driver Sales Server Accounting System Sales message

61 Contoh 4

62 Cara mendefinisikan Component  Untuk mendefinisikan komponen, ada beberapa hal yang harus diidentifikasikan, yaitu : a) File-file apa saja yang digunakan dalam sistem / aplikasi. b) Pustaka (library) dan dokumen apa saja yang berhubungan dan relevan dengan aplikasi c) Bagaimana hubungan antar dokumen-dokumen tersebut.

63  Setelah menentukan mengidentifikasikan dokumen/file/library mana saja yang akan ditampilkan dalam diagram komponen, selanjutnya : a) Tentukan nama yang akan dicantumkan dalam diagram. Biasanya nama komponen dapat berupa nama file langsung yang digunakan atau suatu blok tertentu misalnya Database. b) Siapkan desain posisi layout diagram komponen (memanjang atau menyamping) sebelum menggunakan perangkat lunak permodelan UML untuk menggambarkannya. c) Kalau diperlukan tulis catatan-catatan kecil untuk menjelaskan hal khusus

64 Contoh kasus  Problem :

65  Penyelesaian :

66  Hasilnya :

67 10. Diagram Deployment APSI | Sesi 08 | Noveriza Yuliasari, MT 67  Deployment diagram merupakan gambaran proses-proses berbeda pada suatu sistem yang berjalan dan bagaimana relasi di dalamnya.  Hal inilah yang mempermudah user dalam pemakaian sistem yang telah dibuat dan diagram tersebut merupakan diagram yang statis.  Misalnya untuk mendeskripsikan sebuah situs web, deployment diagram menunjukkan komponen perangkat keras ("node") apa yang digunakan (misalnya, web server, server aplikasi, dan database server), komponen perangkat lunak ("artefak") apa yang berjalan pada setiap node (misalnya, aplikasi web, database), dan bagaimana bagian-bagian yang berbeda terhubung (misalnya JDBC, REST, RMI).

68 Node APSI | Sesi 08 | Noveriza Yuliasari, MT 68  Node digambarkan sebagai kotak, dan artefak yang dialokasikan ke setiap node digambarkan sebagai persegi panjang di dalam kotak. Node mungkin memiliki subnodes, yang digambarkan sebagai kotak nested. Sebuah node tunggal secara konseptual dapat mewakili banyak node fisik, seperti sekelompok database server.

69 Jenis Node APSI | Sesi 08 | Noveriza Yuliasari, MT 69  Device Node, secara fisikal menghitung sumber daya dengan pengolahan memory dan services untuk mengeksekusi software, seperti komputer atau mobile phone.  Execution Environment Node (EEN) adalah software penghitung sumber daya yang berjalan dalam outer node dan menyediakan layanan untuk host dan mengeksekusi executable software.

70 Simbol Deployment Diagram APSI | Sesi 08 | Noveriza Yuliasari, MT 70

71 Menggambar Deployment Diagram  Untuk menggambar diagram deployment, maka ada beberapa hal yang harus diidentifikasikan terlebih dahulu a) Menentukan node b) Hubungan antar node  Cara menentukan node : a) Node merupakan elemen fisik yang sudah tersedia dalam sistem/aplikasi. Amati dan jadikan elemen fisik sebagai node dalam diagram deployment. b) Node mewakili sumber-sumber komputasi  Hubungan antara node dan komponen, yaitu bahwa komponen merupakan hal terkait dan ada dalam eksekusi sistem, sedangkan node merupakan hal yang mengeksekusi komponen.

72 Contoh APSI | Sesi 08 | Noveriza Yuliasari, MT 72

73 APSI | Sesi 08 | Noveriza Yuliasari, MT 73

74 Contoh kasus 2  Misalnya akan dikembangkan aplikasi database berbasis web client-server dengan kriteria yaitu bahwa elemen-elemen yang terlibat yaitu Main Server, Database server dan Client. Komponen dalam Main Server adala ActiveX-Control, JavaBean dan Web Server. Komponen yang ada di Database Server yaitu Oracle database, sedangkan komponen pada Client yaitu Web browser.  Gambarkan diagram deployment, yang menjelaskan relasi antar node.

75

76  Hasilnya :

77 Selesai… 77 APSI | Sesi 08 | Noveriza Yuliasari, MT


Download ppt "U M L UNIFIED MODELING LANGUAGE APSI – Noveriza Yuliasari, MT Sesi 08."

Presentasi serupa


Iklan oleh Google