UML (Unified Modeling Language)


🎯 1. Pengertian UML

https://images.openai.com/static-rsc-4/B-lxuiFKredre8SpVcBuC8LYFsao4RstXMZAhExxuywEw0UvcXh264LwMX2ch-AfjUHuHL1Mm1y-aFSkAeKiJvL-K3kJS_pdexjpd7NzFuYwdpKAvEm8FUnsfc92lK9rhV6NSr9J403EC5K1Z-Scws5dZjTg9XQLpS3zIVHlLNoDhWZ0uhHUWs6yARohitez?purpose=fullsize
https://images.openai.com/static-rsc-4/wOiLt9--9so8Tl2IdXO_aZpB4DMx1cwIugHFCZn8UuEvceWtLZr_nRek1gjguXvziTw6g-hwlRGorNiMWT6d5gBkTyb3yUDvF4K1o-V93-pzRJcmNuqztsE5vMsXIfe61dMTGNX4IyXaE9ZAi_lTHhMeyYoK4-_3YKzMPiBkVdU75rL1E8W3FepJTMt-3dYY?purpose=fullsize
https://images.openai.com/static-rsc-4/uN4YoZ_MFbUpHaXY74iA6soraB59yOvCBYwYorns7fPPhdhx_wxoP15947nGlLnZO1iRmmLGw-3O786ebSmFRLEZrMweREcVro_5-iUZrRyHjJlXfEArU10sHGsVx8Tkf7DuE2TINSHcPWBxISt4V8HV-F0NrEyCFIJ8f-cgIaGI5kSC-aMJqvf2Ouynq0J7?purpose=fullsize

7

UML (Unified Modeling Language) adalah bahasa standar pemodelan visual dalam Rekayasa Perangkat Lunak yang digunakan untuk menggambarkan, merancang, dan mendokumentasikan sistem perangkat lunak.

UML dikembangkan oleh tiga tokoh utama:

  • Grady Booch
  • James Rumbaugh
  • Ivar Jacobson

πŸ’‘ Narasi:

UML membantu developer dan stakeholder memiliki β€œbahasa yang sama” dalam memahami sistem, sehingga mengurangi miskomunikasi dalam pengembangan.


🎯 2. Tujuan dan Fungsi UML

TujuanPenjelasan
VisualisasiMenggambarkan sistem secara jelas
DokumentasiMenyimpan desain sistem
KomunikasiMenyamakan persepsi tim
PerancanganMembantu desain sistem
AnalisisMemahami kebutuhan

πŸ’‘ Narasi:

UML bukan hanya alat gambar, tetapi alat berpikir untuk memahami sistem secara menyeluruh.


🧩 3. Jenis Diagram UML

https://images.openai.com/static-rsc-4/YUc2POpO8AIvWvqjLUCEddmTI6HieQN7k2xCugT-o-asLpLFXB-bWoDoIgutfsOct30SjrI4YtfCA8Gg4wHaOZtqmPueUTj_2fnMgn-f8q4zvdbH1b6XJEplRZQHTVcIMj82SQOUkdG7pnfelbNtTc_EZWD4Vknac35g5aHm_UbF8P57QDhVaAUa_2Us1iQf?purpose=fullsize
https://images.openai.com/static-rsc-4/fvRFHwBM5V22keHB0uRS9FDAQ9-gfbBw_kMkdyXZeLEkRTEElD5EhkhdlrZarie64_TLk3ZdSj6D6RY-Xl5-ikl34ooUsn-vzKdYyVhKGrTAQ096-oZ3_NTaZuCdrvWlKjsg6Gu5-ldO_YVkw3wSixiU46DhI_4jc889WnU8lUinX0R7b9aBgOj_6h27bpWK?purpose=fullsize
https://images.openai.com/static-rsc-4/BIK5HdT73eHNUvmALIRSnMirclK4bIzUPspFxWoAzZ8Sk9cide3mTHkxZBn0ByzWc770-rjZIRelt2H2l3NoLvqcdMCTDomvfA6-mdYlNlM2ASXCezNejaVJ86a2p2GwS5xGz84C9jftuksvYBKQdID_uszdWL2YAuko8ZHNI3XjXMp1q3qXbq_yBL0nDFc3?purpose=fullsize

6

πŸ“Œ Kategori:

  1. Structural Diagram (struktur sistem)
  2. Behavioral Diagram (perilaku sistem)

πŸ—οΈ 4. Structural Diagrams

πŸ“Œ Jenis:

  • Class Diagram
  • Object Diagram
  • Component Diagram
  • Deployment Diagram

πŸ’‘ Narasi:

Diagram ini menunjukkan bagaimana sistem dibangun secara struktur.


🧱 5. Class Diagram

https://images.openai.com/static-rsc-4/k0ZirTGWsUvWCmhzhSmH6z2sB2nzkaYeWXn56jWp_T1BUnliwXZSN3d5aVK44eb2X9Y1Qjih8bVCCm5akIfLGKbAigRlXI3HnZV4qKAYAeTX52hKpdgg2I7yAtBzwi4858aq3sktt2p5k5Oj8RabrqyEBGevxGAb3frqqHtTVtKeZ3AwPcbR5W5Espx4e0pl?purpose=fullsize
https://images.openai.com/static-rsc-4/L13XIqGomHohEdxc8Crrgv4BytmwqfVC701s5-rVtRMkWplo2pJprsHpOlO9zwUxe5qwwHTK8WoBNjfFX_mOtvUMjCtoTc92LD9AdWdq5aBX7XGWGMvlUsok9MLK_dgRC66RMEmKkgj9gtlEb_dFKT5TCDxT58n108tC8WgXI-ER1vB7gZ96ReaauVzbuHhi?purpose=fullsize
https://images.openai.com/static-rsc-4/u0sWAz3AOLhwRdp-C3-GmK8zzJiEzjUQXabx4ViuYytLsRNBmnJRofGyskEZTqvpVQSfkY1CLQm5FfMew7GglR2jHM_d7WTUN8WCVuXfWV3MWa1YZpjX3cX1_1tF3xq2OzIRbjjqa4PrZxiWENF-um1i-wpF0g-zlXZ3n7wAIC4Rw6avQZOwepHwMPrSkEqg?purpose=fullsize

8

πŸ“Œ Fungsi:

  • Menggambarkan struktur kelas dalam sistem

πŸ“Œ Komponen:

  • Class
  • Attribute
  • Method
  • Relationship (Association, Inheritance, Aggregation)

πŸ’‘ Narasi:

Class diagram adalah inti dari desain berbasis objek (OOP).


πŸ”„ 6. Use Case Diagram

https://images.openai.com/static-rsc-4/9jxA71sH71fF0sHhuSuo_2kIvK8K2oqokuJjeKwyxtfdy2RQKAmxEt63fiTMGYftHYNvEVVoYsvz6qtUTULg1Eu2YPz6P0SCK67XLVGxhxM0lHl82Su7EBUSnXdD7Ta6pYrlxJ_AvKkYyzxksXjLktVLJzJ9K2nC07KXsn1LS1DrGwYDSwWOV7eyZk3I0P8Y?purpose=fullsize
https://images.openai.com/static-rsc-4/UjhYc9x05h1xkoGqhdgItf34Ke_pDCt0uWq8h4qZaEFQrDGP3NJhYt-m7TcZ4F-15NvJekCFwYet36KZEYwx4R6pS8MBHkbzTP2K-qlsJrxIKQ9__j5lOjKxqTK4X5j-ULi-Fr4PGwbgcJsuBc89owPEAuZanW8G3xf9Ls51iHh55k2gTTV3qKs8eJDFkroB?purpose=fullsize
https://images.openai.com/static-rsc-4/6hQtRHxlUj4eqzqCeQs3aI-Q-Ndi50wGfbmHuIiqOdx0dxvbKMKk2OQzThMKMEwEl1wFET7dqYDwcXWZjvHoNl2CQROGF8uVo6uagi2tSGfGgnuLJEUNii7xXKxY74IXPErVf_TJt780j6Sw3bqNuMt2Z_ygbPg96ZxyYd9YlUKn1ly9AiOOwaB8nbM94bNj?purpose=fullsize

8

πŸ“Œ Fungsi:

  • Menggambarkan interaksi antara user dan sistem

πŸ“Œ Komponen:

  • Actor
  • Use Case
  • System Boundary

πŸ’‘ Narasi:

Use case diagram membantu memahami kebutuhan sistem dari sudut pandang pengguna.


πŸ” 7. Sequence Diagram

https://images.openai.com/static-rsc-4/T5Y0I6M85PeE-sbRymxEukEyftnf_ZpuHFuKBdDxpXGbtGmwsGVLrm-beL91UVsz7ARUfrXOBIwE0fNiA8YHKf5QMIlp-Y7b0RH6c8oM2utypBE-HzfJ9KGfrlD5PWL9PsG5HKz3hvu_nyPxrz1GWV3_nYBgagUq8HdHj0YGOxuolGyjit38C7t4lCIc72pj?purpose=fullsize
https://images.openai.com/static-rsc-4/mGOZ9Ku9gnlTGlKrDjt3K26snNA_-X91cAMJUqyB4DbfMaYyMzo7O9K6xL63bQNgVtEm2exzvpsnSPq7G1G_mjtfOosrtQOP1qxzipG1w-cDlQoogUbzoWLvVu4qEJAczj0y8p6NlD0S0VvFwIRUod4cVb46qjqOittSrV4XVBXzTvtvTkSeWpxSydmp1kpB?purpose=fullsize
https://images.openai.com/static-rsc-4/aVObRVy1rkOPQtBTSYbFx-2-mrw0KsRjn0dhf0QBCPNZft_6XVeuM_m9FfTK0GkdhiXHJbn4459M0t3sB3TanudkFSAunr_x85vCaxBLfTAx3RYGbCcam3Thae_m8mX09_TGfnxhIwuSj2TV28bEwqj9bvqlqV-qIrcVy-bAtE6SKuczOFxjmnfA2SgYDWRx?purpose=fullsize

7

πŸ“Œ Fungsi:

  • Menunjukkan alur interaksi antar objek

πŸ“Œ Komponen:

  • Lifeline
  • Message
  • Activation

πŸ’‘ Narasi:

Sequence diagram menjelaskan bagaimana sistem bekerja secara dinamis.


πŸ”„ 8. Activity Diagram

https://images.openai.com/static-rsc-4/tVBB4W0J65433zNz1LfkFyQ4A77xrx7jnuaAs4cIU4yi7odf0TeVH_I62T6zZo7aRZmCiFlktN0hDP9X0lB-k4Ejoq8hiK64XhmFM05na1KrWHRbVw5WKDpkotw8DH4GLhIO4gbvsOoXrmkX6qRuH2SXZjHiHB7jwjQwHuv5F_zttjGmZzww_uyZ57M57H8X?purpose=fullsize
https://images.openai.com/static-rsc-4/wOiLt9--9so8Tl2IdXO_aZpB4DMx1cwIugHFCZn8UuEvceWtLZr_nRek1gjguXvziTw6g-hwlRGorNiMWT6d5gBkTyb3yUDvF4K1o-V93-pzRJcmNuqztsE5vMsXIfe61dMTGNX4IyXaE9ZAi_lTHhMeyYoK4-_3YKzMPiBkVdU75rL1E8W3FepJTMt-3dYY?purpose=fullsize
https://images.openai.com/static-rsc-4/l_WxMrahIwee8buFdZNnz9UkO8NahtTp9Vksl9VSpU7sxujRLNYS9fwP0YQNkaAhByAMIZqwt9q5VyoDD33IYyDu5-xn7SV2o46878pNzRFBMkgrYgBj0wjT8mQeDOHe8yoYOZpgj2TP0sq8pM1Pi1CFC06miv1PKc4eHlSnBPn6rW2sAD17tLRt4akLYuv0?purpose=fullsize

6

πŸ“Œ Fungsi:

  • Menggambarkan alur proses kerja sistem

πŸ“Œ Komponen:

  • Initial node
  • Activity
  • Decision
  • Final node

πŸ’‘ Narasi:

Activity diagram mirip flowchart dan sangat mudah dipahami.


🧩 9. Component Diagram

https://images.openai.com/static-rsc-4/36qlN7Bz0Y9ZwF5jL2reqFYReKM_H8HwPo0X8TITQYYp8qWvj2hQXuBdGTHGjK2sHNMDowzBKYzK-JTiD6-A-fEcw8IiPSJTtFBn9jHeyH3xgLP0cRZGqCzsCECYA-3qB4tj43ygBCfnzUSsp5eLtECmgiPS9AQQ_E3vTAsd82l28gCsYnbt5D1pxp8v8qSk?purpose=fullsize
https://images.openai.com/static-rsc-4/LhLThb86s9WJoiy7BHXdpXIGDgEhAPx3eQflqIbhvR_9awpElv9WTm7nnXqiAHyOo2LjuiX35T037vXTTumASjGnud8xfSlQlQSRPisqCjZL0xaXPBudtyhuzeeJEVGy-86my3zfnuH7khfcj52L6RyFHn7-32zbaRXKoFEZmJ2bAknT0nHMeUpjqXfpl4Ya?purpose=fullsize
https://images.openai.com/static-rsc-4/itbRkNNMGJGbDQlMoUyxcS5wHH2dN6b9N422ESST2F_ETY1g_fSNu0S-QFe0kklz7QfEJD3u-LTEYWkiSTz4na9ICONtVoR0ltvHRIRiLwTn1B15sYKGQBKRyOy_fakjVgLN-pVoUYnHy6iBcB2S3hdkgpdYWoqclTGrQpV0n7j0A2fSAucce5UiPH0mgcxh?purpose=fullsize

5

πŸ“Œ Fungsi:

  • Menunjukkan struktur komponen sistem

πŸ’‘ Narasi:

Digunakan untuk memahami hubungan antar modul dalam sistem.


🌐 10. Deployment Diagram

https://images.openai.com/static-rsc-4/UWD70NMXzAWR2OLHOI9VxADGixTDgVeRPwSoJMoO2FLjJX4tuJd2IrSitQitpMjfJNtWPsHO_unvxXttEOGC_HFEUxt2-YS3x4HkfMLRoqO5UidaVcQeEVyA4CtcTleCc5R1ByNx8OUmJMT-t0YS_bUBN_Pde5eaeYqi7JwC4ANfuL_oLWUFbWhWmapaecg4?purpose=fullsize
https://images.openai.com/static-rsc-4/BDyQwF_NW8TEqUs-SuaY4Vg1B0Ch2vkUyta7hGeRaFtfNpTcKZkX4m8jjnS1xxmEN0LCskIuKiDnHuy6pPyaEy6B63hGb8CvOVidJlO5hpLsNclKWMDjQKtZcZGs1_mzLlbHD50plw1ZYKjKI5BmVGb6PjPdgG6o5KoFqRu2OpZBxUQfLMskZfLzghoaArVX?purpose=fullsize
https://images.openai.com/static-rsc-4/TWj4YxChgR20Rs4dNTpIfp5MAlZ6yCJhjKUCpsNcReCRNy-eCYCJw38Egs88NoASevsIIbbruS5cltukIQHvOIBvzbuyPuJHiV-Vhbg6nU7p6Wkx5ymYl1wiPpcAsts1vwW5PozERUYWwL59Uu6VvL_nslVJcQiM-vl57bRquuN0JOMaxofJns21r1XBedmT?purpose=fullsize

7

πŸ“Œ Fungsi:

  • Menggambarkan distribusi sistem pada hardware

πŸ’‘ Narasi:

Deployment diagram menunjukkan bagaimana sistem dijalankan di dunia nyata.


πŸ“Š 11. Perbandingan Diagram UML

DiagramFungsiKategori
Use CaseInteraksi userBehavioral
ClassStruktur sistemStructural
SequenceInteraksi objekBehavioral
ActivityAlur prosesBehavioral
ComponentStruktur modulStructural
DeploymentDistribusi sistemStructural

🧠 12. Notasi UML Dasar

πŸ“Œ Contoh:

  • Garis β†’ relasi
  • Panah β†’ arah komunikasi
  • Kotak β†’ class/objek
  • Oval β†’ use case

πŸ’‘ Narasi:

Notasi UML harus dipahami agar diagram dapat dibaca dengan benar.


⚠️ 13. Kesalahan Umum dalam UML

KesalahanDampak
Diagram tidak konsistenSulit dipahami
Terlalu kompleksMembingungkan
Tidak sesuai kebutuhanTidak berguna

πŸ§ͺ 14. Studi Kasus

πŸ“Œ Sistem Login:

  • Use Case β†’ Login user
  • Class β†’ User, Auth
  • Sequence β†’ proses login
  • Activity β†’ alur login

πŸ’‘ Narasi:

Satu sistem dapat memiliki banyak diagram UML yang saling melengkapi.


πŸ“ˆ 15. Best Practice UML

  • Gunakan diagram sesuai kebutuhan
  • Jangan terlalu kompleks
  • Konsisten dalam notasi
  • Dokumentasikan dengan jelas
  • Gunakan tools (StarUML, Draw.io)

πŸŽ“ 16. Kesimpulan

  • UML adalah bahasa standar pemodelan sistem
  • Membantu komunikasi dan desain sistem
  • Terdiri dari berbagai diagram
  • Sangat penting dalam RPL

πŸ’‘ Narasi Penutup:

Mahasiswa yang menguasai UML akan lebih mudah dalam merancang sistem dan bekerja dalam tim pengembangan software.


πŸ“Œ 17. Latihan / Diskusi

  1. Apa itu UML?
  2. Sebutkan jenis diagram UML!
  3. Apa fungsi Use Case Diagram?
  4. Jelaskan perbedaan Class dan Sequence Diagram!
  5. Buat contoh diagram sederhana!

πŸ“Ž 18. Tugas Praktik

  • Buat Use Case Diagram sistem kampus
  • Buat Class Diagram sederhana
  • Buat Activity Diagram