UML (Unified Modeling Language

)
Versi 1.7 (Nov 06) Yudi Wibisono yudi@upi.edu

1

Apa UML?
• Bahasa pemodelan perangkat lunak  notasi untuk mengeskpresikan model • Analogi: bahasa pemodelan bidang arsitek, sipil:

2

Apa UML? (lanj)
• Bahasa pemodelan untuk bidang perangkat lunak:

3

Apa UML?
• Latar belakang UML
– 90-an, terlalu banyak notasi sehingga membingungkan developer – Perlu satu bahasa standard: UML 1.0 muncul tahun pada 97. UML 2.0 (2004)

• UML bukan metodologi. • UML independent terhadap proses, independen terhadap bahasa pemrograman. • Analogi dengan bahasa manusia  Bahasa dapat
digunakan untuk membuat novel, puisi, berita, prosa dst. Bahasa tidak mendikte bagaimana karangan tersebut di buat.
4

5 .Mengapa menggunakan UML • Analogi: mengapa belajar bahasa Inggris? • Standard notasi untuk software development di berbagai perusahaan  nilai tambah saat wawancara kerja! • Tersedia banyak tools • Bahasanya lengkap dan ekspresif.

Communication Diagram. Package Diagram. 6 . • Behavior Diagrams: Use Case Diagram. Interaction Overview Diagram. dan State Machine Diagram.Elemen UML? • 13 Diagram (tidak semua harus digunakan!) • Structure Diagrams: Class Diagram. Composite Structure Diagram. Timing Diagram. Activity Diagram. Component Diagram. • Interaction Diagrams: Sequence Diagram. Object Diagram. Deployment Diagram.

Diagram yang umum digunakan di tahap requirement –Use case diagram –Activity diagram 7 .

Use Case Diagram (UCD) 8 .

• Umumnya digunakan pada tahap requirement. 9 .Overview Use Case Diagram • Diagram yang memperlihatkan relasi antara aktor dan use case di dalam system.

• Memperlihatkan cakupan sistem  batasan sistem 10 .Fungsi UCD • Memperlihatkan aspek fungsional sebuah sistem (apa yang dapat dikerjakan sistem).

Elemen UCD: Use Case • Use Case: – Aksi yang bermanfaat bagi actor. yang harus disediakan sistem. – Judul use case: kata kerja 11 .

Elemen UCD (Lanj): Actor – Orang/organisasi/mesin yang berinteraksi dengan sistem – Sesama actor tidak saling berinteraksi Actor 12 .

Asosiasi antara dua use case Generalisasi antara dua actor Generalisasi antara dua use case 13 .Elemen UCD: Relationship • • • • Asosiasi antara actor dan use case.

gif 14 .UCD: Relationship (lanj) Asosiasi Generalisasi Generalisasi http://www.com/images/style/useCaseRelationships.agilemodeling.

UCD:Kotak Batasan System • Opsional Kotak Batasan 15 .

Use Case: pengunaan • Bukan digunakan untuk menggambar kan urutan!  gunakan activity diagram 16 .

Activity Diagram 17 .

• Menyerupai flow chart. 18 .Overview Activity Diagram • Fokus terhadap aspek keterurutan aksi.

Fungsi Activity Diagram • • • • Menjelaskan lebih detil use case. Menjelaskan algoritma yang kompleks. Menjelaskan bisnis rule yang kompleks. Pengganti flow chart dan data flow diagram (DFD) 19 .

Elemen Activity Diagram Start point action Fork  paralel 20 .

Elemen Activity Diagram (2) Branch  percabangan Merge  percabangan selesai End point Join  aktivitas paralel harus selesai semua baru dilanjutkan 21 .

Activity Diagram: Swimline actor Pengelompokan aktivitas yang dilakukan oleh suatu actor actor actor 22 .

kennesaw.edu/~dbraun/csis4650/A&D/UML_tutorial/images/state2.State Machine Diagram http://pigseye.jpg 23 .

Overview State Diagram • Mendeskripsikan tingkah laku sistem. • Fokus terhadap state dan transisinya 24 .

Fungsi State Diagram • Menjelaskan lebih detil tingkah laku sebuah objek. • Mirip dengan activity diagram? Perbedaanya? 25 .

kennesaw.edu/~dbraun/csis4650/A&D/UML_tutorial/images/state0.jpg .Elemen State Diagram • State: terdiri atas nama state dan aksi • Transisi (umumnya dengan kondisi) 26 Gambar: http://pigseye.

Elemen State Diagram:supersate • Superstate mencakup beberapa state 27 .

• State diagram dapat menggambarkan trasisi yang lebih rumit 28 .State Diagram vs Activity Diagram • Tujuan – Activity diagram  business rule (user friendly) – State diagram  internal sistem (developer friendly) • State diagram dapat digunakan untuk menggambarkan activity diagram. tapi tidak sebaliknya.

com/images/models/classDiagramInitial.agilemodeling.Class Diagram http://www.jpg 29 .

Overview Class Diagram • Elemen terpenting dalam perancangan dan analisis menggunakan OOA dan OOD. agregasi) 30 . • Memperlihatkan class (atribut dan method) dan relasinya (inheritance. asosiasi.

com/images/style/classDiagramAnalysisVsDesign.private + public # protected atribut method 31 http://www.Elemen Class Diagram: Class Nama kelas .gif .agilemodeling.

. 1.agilemodeling. 0.1... 0.jpg .Elemen Class: Asosiasi • Multiplicity Indicators: 0.com/images/models/classDiagramAssocationNotation.N Contoh: 32 http://www..*. 1 .*.

com/images/style/classDiagramPersonAddress.agilemodeling.Elemen Class: Inheritance • Garis dengan segitiga Inheri tance 33 http://www.gif .

Inheritance: contoh lain http://www.jpg 34 .agilemodeling.com/images/models/classDiagramInheritance.

• Composition: Lebih ketat dari agregasi agregasi STUDENT CLUB compo sition 35 .Elemen Class: Agregasi dan Composition dari objek • Agregasi: Objek yang terdiri lainnya.

Object Diagram/Instance Diagram BUDI: MAHASISWA AHMAD: MAHASISWA TRANSKRIP BUDI: TRANSKRIP TRANSKRIP AHMAD: TRANSKRIP RPL-LANJUT: MATAKULIAH BASISDATA: MATAKULIAH 36 .

Overview Object Diagram • Mengambarkan instance dari class (Object) dan interaksinya. • Menjelaskan lebih lanjut diagram class 37 .

• Format: Nama Objek: Nama Class atau Nama Class saja Contoh: BUDI:MAHASISWA atau :MAHASISWA AHMAD: MAHASISWA :MAHASISWA 38 .Elemen Objek Diagram • Objek: Gunakan underline (garis bawah) pada nama objek.

Sequence Diagram http://www-128.jpg 39 .ibm.com/developerworks/rational/library/content/RationalEdge/feb04/3101_figure4.

• Menggambarkan aspek dinamis dari sistem (bandingkan dengan class diagram dan objek diagram yang menggambarkan aspek statis) 40 .Sequence Diagram • Menggambarkan urutan interaksi antar objek.

41 .Elemen Sequence Diagram Dua elemen utama: Objek dan Message.

Elemen Sequence: Message ke dirinya sendiri (lanj) 42 .

com/developerworks/rational/library/content/RationalEdge/feb04/3101_figure7.jpg 43 .Elemen Sequence Diagram : Guard http://www-128.ibm.

com/developerworks/rational/library/content/ RationalEdge/feb04/3101_figure8.Elemen Sequence Diagram: Alternative http://www128.jpg 44 .ibm.

jpg 45 .Elemen Sequence Diagram: Loop http://www-128.ibm.com/developerworks/rational/library/content/RationalEdge/feb04/3101_figure10_small.

Sign up to vote on this title
UsefulNot useful