{"id":2120,"date":"2026-05-26T07:21:24","date_gmt":"2026-05-26T07:21:24","guid":{"rendered":"https:\/\/www.vpascode.com\/id\/docs\/uncategorized\/plantuml-component-diagram-syntax-guide\/"},"modified":"2026-05-26T07:21:24","modified_gmt":"2026-05-26T07:21:24","slug":"plantuml-component-diagram-syntax-guide","status":"publish","type":"ld_docs","link":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/","title":{"rendered":"Panduan Sintaks Diagram Komponen PlantUML"},"content":{"rendered":"<h2>Apa itu Diagram Komponen?<\/h2>\n<p>Sebuah <strong>Diagram Komponen<\/strong> adalah diagram struktural <strong>diagram UML<\/strong> yang memetakan organisasi modular tingkat tinggi dari suatu sistem perangkat lunak. Sebagai komponen penting dalam spesifikasi Bahasa Pemodelan Terpadu (UML), jenis diagram <strong>tipe diagram UML<\/strong>memvisualisasikan bagaimana modul kode fisik, perpustakaan, mikroservis, paket eksekusi, dan lapisan basis data dikelompokkan dan saling terhubung secara struktural. Ini mengalihkan fokus dokumentasi dari definisi kelas yang terperinci, memungkinkan arsitek perangkat lunak dan insinyur utama untuk menggambarkan batas integrasi sistem, jalur orkestrasi API, dan ketergantungan pihak ketiga secara jelas.<\/p>\n<p>Baik Anda sedang menggambarkan topologi mikroservis berbasis awan modern atau menunjukkan bagaimana perpustakaan kerangka kerja internal terhubung ke inti aplikasi warisan Anda, peta komponen UML memberikan gambaran struktural yang jelas mengenai batas sistem. Dengan <strong>VPasCode<\/strong>, tata letak komponen Anda dirender secara otomatis berdasarkan teks deklaratif, menghilangkan kesulitan dalam menyesuaikan kotak tata letak atau kabel penghubung secara manual.<\/p>\n<h2>Panduan Sintaks Inti: Elemen dan Konstruksi<\/h2>\n<p>Untuk merancang diagram komponen UML yang elegan dan sesuai standar di PlantUML, Anda perlu menguasai deklarasi blok kode modular, mekanika kabel antarmuka, pengelompokan paket sistem, dan parameter koneksi arah.<\/p>\n<h3>1. Deklarasi Komponen Perangkat Lunak<\/h3>\n<p>Anda mendeklarasikan modul perangkat lunak menggunakan <code>component<\/code>kata kunci. Sebagai alternatif, Anda dapat membungkus identifikasi teks bersih di dalam tanda kurung siku (<code>[Nama Komponen]<\/code>), yang berfungsi sebagai indikator singkatan global:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyxFBSZFIyqhKGX8hCm5qgvvwPbvgRnSqOwb9HaAmQb5PPd9gR4AYSKA804e7m00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyxFBSZFIyqhKGX8hCm5qgvvwPbvgRnSqS6fHMMPoQaAZgKbGE7CxCJYp5Y5ujIanFJ4J91W1bG10000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">component PaymentEngine\r\n[Service Autentikasi] sebagai AuthService<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyxFBSZFIyqhKGX8hCm5qgvvwPbvgRnSqS6fHMMPoQaAZgKbGE7CxCJYp5Y5ujIanFJ4J91W1bG10000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyxFBSZFIyqhKGX8hCm5qgvvwPbvgRnSqOwb9HaAmQb5PPd9gR4AYSKA804e7m00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"kuAYxGJ\"><img alt=\"\" class=\"alignnone size-full wp-image-584\" decoding=\"async\" height=\"48\" sizes=\"(max-width: 315px) 100vw, 315px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724.png 315w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724-300x46.png 300w\" width=\"315\"\/><\/p>\n<p><em>Kiat Pro:<\/em>Selalu pasangkan string komponen panjang dengan <code>sebagai<\/code>identifikasi (seperti <code>sebagai AuthService<\/code>) untuk menjaga garis hubungan tetap bersih dan mudah dibaca.<\/p>\n<h3>2. Mendefinisikan Port dan Antarmuka<\/h3>\n<p>Komponen berinteraksi satu sama lain melalui titik masuk struktural. Anda dapat secara eksplisit memodelkan antarmuka UML standar (digambarkan secara visual dengan ikon lingkaran &#8220;lollipop&#8221; yang bersih) menggunakan kata kunci<code>antarmuka<\/code>kata kunci:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:oymhIIrAIqnELL0ASWqEKN0Cy5GeCr9II2nM24zD0l9ukQ8TIqioWbEBoZAJKsCLT7KrDA5I2bOAIgaL1Vd5gSLA0000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IymhIIpABSrEL50ASWqEKN0Cy5GeCr9IA4vDIanFp5G8Jqq22l5oHJkMbcG4fnQLPIQdnYhewcfeGgKKh1IKSbFpqbEpYmloYvK0\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">antarmuka \"REST API v2\" sebagai WebAPI\r\n[AuthService] --() WebAPI : \"mengekspos\"<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IymhIIpABSrEL50ASWqEKN0Cy5GeCr9IA4vDIanFp5G8Jqq22l5oHJkMbcG4fnQLPIQdnYhewcfeGgKKh1IKSbFpqbEpYmloYvK0\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:oymhIIrAIqnELL0ASWqEKN0Cy5GeCr9II2nM24zD0l9ukQ8TIqioWbEBoZAJKsCLT7KrDA5I2bOAIgaL1Vd5gSLA0000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"xsCdMaO\"><img alt=\"\" class=\"alignnone size-full wp-image-585\" decoding=\"async\" height=\"188\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19000321f0e.png\" width=\"132\"\/><\/p>\n<h3>3. Memetakan Ketergantungan Komponen<\/h3>\n<p>Untuk menunjukkan bahwa satu modul sistem bergantung pada atau berkomunikasi dengan modul lain, gunakan panah arah (<code>--&gt;<\/code>). Anda juga dapat menggunakan garis ketergantungan titik standar (<code>..&gt;<\/code>) untuk mewakili hubungan yang lebih longgar, seperti pola konsumsi antrean pesan atau panggilan runtime sementara:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:YtOhoiyhISrBKN0iA8XLqDMrKmXFJN8CyEJbWj0AUdfs2j4kYIM9IOd5gGgkUUcPUQcn2bOAIi61FWg1fQb5cQd5IW00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:YtOioCdCJYpEL70hoiyhISrBYLNGrRLJ24zDSWpmvEM2q0fwUdOAqRwfnPbv2av0nSKABeabYR4ALWfAtgMfHPaAmO4-IW00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">[Aplikasi Frontend] --&gt; WebAPI\r\nWebAPI ..&gt; [Mesin Basis Data] : \"Kueri SQL\"<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:YtOioCdCJYpEL70hoiyhISrBYLNGrRLJ24zDSWpmvEM2q0fwUdOAqRwfnPbv2av0nSKABeabYR4ALWfAtgMfHPaAmO4-IW00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:YtOhoiyhISrBKN0iA8XLqDMrKmXFJN8CyEJbWj0AUdfs2j4kYIM9IOd5gGgkUUcPUQcn2bOAIi61FWg1fQb5cQd5IW00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"vJvNXkh\"><img alt=\"\" class=\"alignnone size-full wp-image-586\" decoding=\"async\" height=\"290\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19000fc072e.png\" width=\"162\"\/><\/p>\n<h3>4. Mengatur Batas dengan Paket<\/h3>\n<p>Untuk menetapkan batas sistem bawah yang bersih atau mengelompokkan komponen berdasarkan lingkungan penggunaan, bungkus blok modul Anda di dalam pembungkus struktural<code>paket<\/code> atau <code>awan<\/code> pembungkus:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AqXCpavCJrLG2avDBYtABAbKSCxFAqcjA55IgERbKW22QCVIaWo5uDIYiipar5YeM4X-TcgUGbXYJcPAOab-4L2u5W00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AqZCJYrHKFBEpoj9pIvMy4vDp4tCIynJKgZcvL80WcYVn4gGW89_INvHPd5YSMOiL28iCISp9H4egX2IdvsQ1nIk1G00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">paket \"Konteks Keamanan\" {\r\n    [Layanan Otorisasi]\r\n    [Validator Token]\r\n}<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AqZCJYrHKFBEpoj9pIvMy4vDp4tCIynJKgZcvL80WcYVn4gGW89_INvHPd5YSMOiL28iCISp9H4egX2IdvsQ1nIk1G00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AqXCpavCJrLG2avDBYtABAbKSCxFAqcjA55IgERbKW22QCVIaWo5uDIYiipar5YeM4X-TcgUGbXYJcPAOab-4L2u5W00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"wDwUGVq\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-587\" decoding=\"async\" height=\"99\" loading=\"lazy\" sizes=\"auto, (max-width: 349px) 100vw, 349px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19001aed261.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19001aed261.png 349w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19001aed261-300x85.png 300w\" width=\"349\"\/><\/p>\n<h2>Praktik Terbaik untuk Sistem Bawah Komponen yang Bersih<\/h2>\n<ul>\n<li><strong>Jaga Nama Node pada Tingkat yang Tinggi:<\/strong> Hindari penamaan komponen berdasarkan file atau direktori kode internal tertentu. Gunakan nama fungsional, tingkat tinggi seperti <code>[Router Pemberitahuan]<\/code> atau <code>[Lapisan Cache]<\/code>.<\/li>\n<li><strong>Manfaatkan Notasi Lollipop:<\/strong> Alih-alih menggambar garis datar antar kotak, arahkan koneksi melalui node antarmuka eksplisit.<code>antarmuka<\/code> node. Ini dengan jelas membedakan *apa* antarmuka yang dipaparkan dari *siapa* yang mengonsumsinya.<\/li>\n<li><strong>Kontrol Ekspansi Tata Letak:<\/strong> Peta komponen berkembang dengan cepat saat melacak beberapa sub-sistem. Gunakan bendera spasial di dalam panah ketergantungan Anda (seperti <code>-kanan-&gt;<\/code> atau <code>-bawah-&gt;<\/code>) untuk mengatur komponen Anda secara rapi di seluruh kisi kanvas.<\/li>\n<\/ul>\n<h2>Contoh Diagram Objek PlantUML Dunia Nyata<\/h2>\n<h3>Contoh 1: Jaringan Gateway API Inti (Antarmuka &amp; Pengelompokan Paket)<\/h3>\n<p>Contoh ini menunjukkan setup web sistem multi-lapisan standar, menyoroti bagaimana aplikasi pengguna publik terhubung ke mikroservis internal melalui antarmuka REST API yang terstruktur.<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:RLBBJiCm4Bn7oZ-iUk7KNq1zg2eLL5XAKGu88ITPWaLYLxO3YX3_plfH9pnoMi-EPtRMMHdBjHtwBi_El7xZBSA23LKdQc0Q3KhBhL0IxlY8UW6VUGRqFPPOGS7MiEq4KPw06wXz6Vj7LOaEGTmNSqhlqJpxohEPtPeTOCyjVl0HYg4oex7O9oiXBUeNNXFnvdHYHQBkP7DMr5quPTTwtfVH_LR95cQothmDzM_thT886pgXRA10_IvgDF-vFnZKSEIIRlKKoEbxQuTJ_OU_4LqdmXoU5y-96cSzD2Gcx7ZnzhFomRx6FkEZjsDQqM36AUvaAsGWLa4qXhg2Kb2Qy_pXh9gIXoU2vV9wMbXuavzOB0YSxYRrY3ZXAgujfJPvTcaxmRIQEJZVGvv5YhCAeQUsmrA-5VdGN_eD\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:RLB1Ri8m3BrNwZzOlUp4Bqp01H13grGc3jCqEM05Bsr0JQ89JVltERGqPQAdzldPx_cvK-UnzQ6fy-oCUuEQe7Z1CpkqKBRao7fq36LGDPi2Vl8Cv7bVrqmMTgIWAcSVu4YXHePzXFqTPtDIN1FmQvLepHNBizyy6ybMGJbsdXfOeATllC2iN0sIA4RQ9XY4OikU3SpCaTk1kjnkoweO5EBdvsBNEndDW_N9wkH4TvN_LbxmWbOIc0j0zW0hw_cHapXm8ymlQcJLagpMmMAoyUQe5Sx3Fc6ZvYFQH9zpNRFLGqTl_-PcTP1mMUwH_6Fmnvwr8SVHGzEU75tFHusIpXPjugjEeT_t2PP11QkDiC_fs8PIBjr5OJ9vJfbsvxl7-XS1K--zG0_7wIa9rGMSPxTg73gaDWR7sUHPJuboNGIf7B5XpQaCbv_x3m00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\npackage \"Lapisan Presentasi Publik\" {\r\n    [Klien Web SPA] sebagai client\r\n    [Klien Mobile iOS] sebagai mobile\r\n}\r\n\r\npackage \"Subsistem Gateway API\" {\r\n    antarmuka \"Titik Akhir Gateway HTTPS\" sebagai HTTP_GW\r\n    [Gateway API Kong] sebagai gateway\r\n}\r\n\r\npackage \"Layanan Backend Inti\" {\r\n    antarmuka \"API Manajemen Pengguna\" sebagai UserAPI\r\n    antarmuka \"API Penagihan\" sebagai BillingAPI\r\n    \r\n    [Layanan Identitas] sebagai auth\r\n    [Mesin Pemrosesan Pembayaran] sebagai billing\r\n}\r\n\r\n' Hubungkan presentasi ke gateway\r\nclient --&gt; HTTP_GW\r\nmobile --&gt; HTTP_GW\r\nHTTP_GW -- gateway\r\n\r\n' Hubungkan gateway ke antarmuka backend\r\ngateway --&gt; UserAPI\r\ngateway --&gt; BillingAPI\r\n\r\nUserAPI -- auth\r\nBillingAPI -- billing\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:RLB1Ri8m3BrNwZzOlUp4Bqp01H13grGc3jCqEM05Bsr0JQ89JVltERGqPQAdzldPx_cvK-UnzQ6fy-oCUuEQe7Z1CpkqKBRao7fq36LGDPi2Vl8Cv7bVrqmMTgIWAcSVu4YXHePzXFqTPtDIN1FmQvLepHNBizyy6ybMGJbsdXfOeATllC2iN0sIA4RQ9XY4OikU3SpCaTk1kjnkoweO5EBdvsBNEndDW_N9wkH4TvN_LbxmWbOIc0j0zW0hw_cHapXm8ymlQcJLagpMmMAoyUQe5Sx3Fc6ZvYFQH9zpNRFLGqTl_-PcTP1mMUwH_6Fmnvwr8SVHGzEU75tFHusIpXPjugjEeT_t2PP11QkDiC_fs8PIBjr5OJ9vJfbsvxl7-XS1K--zG0_7wIa9rGMSPxTg73gaDWR7sUHPJuboNGIf7B5XpQaCbv_x3m00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:RLBBJiCm4Bn7oZ-iUk7KNq1zg2eLL5XAKGu88ITPWaLYLxO3YX3_plfH9pnoMi-EPtRMMHdBjHtwBi_El7xZBSA23LKdQc0Q3KhBhL0IxlY8UW6VUGRqFPPOGS7MiEq4KPw06wXz6Vj7LOaEGTmNSqhlqJpxohEPtPeTOCyjVl0HYg4oex7O9oiXBUeNNXFnvdHYHQBkP7DMr5quPTTwtfVH_LR95cQothmDzM_thT886pgXRA10_IvgDF-vFnZKSEIIRlKKoEbxQuTJ_OU_4LqdmXoU5y-96cSzD2Gcx7ZnzhFomRx6FkEZjsDQqM36AUvaAsGWLa4qXhg2Kb2Qy_pXh9gIXoU2vV9wMbXuavzOB0YSxYRrY3ZXAgujfJPvTcaxmRIQEJZVGvv5YhCAeQUsmrA-5VdGN_eD\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"IPoKTLn\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-588\" decoding=\"async\" height=\"577\" loading=\"lazy\" sizes=\"auto, (max-width: 472px) 100vw, 472px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19002718bf6.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19002718bf6.png 472w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19002718bf6-245x300.png 245w\" width=\"472\"\/><\/p>\n<p><strong>Analisis Sintaks:<\/strong> Dengan menempatkan modul di dalam batas <code>package<\/code> yang bersih, mesin tata letak otomatis menciptakan zona yang jelas dan indah. Klien presentasi terhubung secara eksklusif ke port gateway yang terpapar tunggal, yang kemudian mengelola penjadwalan lalu lintas internal ke lapisan mikroservis backend khusus di bawahnya.<code>HTTP_GW<\/code> port gateway, yang kemudian mengelola penjadwalan lalu lintas internal ke lapisan mikroservis backend khusus di bawahnya.<\/p>\n<h3>Contoh 2: Saluran Pemrosesan Data Cloud (Awan Asinkron dan Antrian)<\/h3>\n<p>Rancangan perusahaan canggih ini memetakan arsitektur data cloud asinkron dunia nyata, melacak saluran masuk, broker pesan terpisah, dan titik akhir penyimpanan fisik.<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:HLAnRkCm3DqD-1y8BpUb7RfrADfBCnokQ0EuW8UY0sCpjc1PT2dfqhIuVp_AYd6Q2F7nyRqdtVk04k9aowAr73ke7feQjalvJE74Ci9FZgv3ELVmNHQWv-sNwya7mmuQEWpCupkWXrEkC-OZKYHbcx4T27xZSKIbZJwGL0by41v9Bdnr4C89zi8jUSy2kp_a0ZIwdIHpBsM6TnZmW3wnJ_Yb8keRUDGxUCAH5d8VMB2dilXR5cNn7xzbcRKJAECR51eu-ZmarFd174CQ-R5gCQw7sSnaZICuMZx1HEs0phI-BDvsdsh7eLLd9Wb-cETts6pkrYZW5ghzI_qAru4iJHGqnB9Ocnin_H0KdRDOmF5WZHz0y0IMUrybCPVsrTNT9OQ4tBBpSI88F9jsYKHTfnJJWenAGYv9f8b6Z1flUPf5ZL47UnHzfG17OoblMj5frHf76drEGkqPTgzFK9zTEmWxyuNf1-ZSFRbEVz0_\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:JLAxRjmm4Em5w1yMQbATKwHBOLY9ZJmkHWJS0IuC5wFJdiJmfIn914YGVmyfwNnXjUJES6Q7l0iH4fCrTNKoFWtKV414WAEl4EN6NBHF1_fOUWtzgIlAw_c9-ybxJL_So26g5mhSOuIYNsjZXVrCd9YQFHjlvunkPvmcfZtE6iqhfHUlMRQBEyxr3r1xWe0wjk831sgD4hZ_PBoySeRijqV8GlTmI7IVzzHQ_FQE3k-kEY5wmSXrzRUkwkhA-fG6k76bTImfO0BSbISyX4cTOs6zeKVMS2fO9fWaDAiPD6ysuUhgkPsDqWYAzaQnemST8ek3UQ7TxlQI3xsdflj-EDBRo8OjHr5DNLsQkom1bz5hD0LyPEbLpETa_4YMNSJK54SRvERcTWkbeFVUXMIp1oovBH5HzBFIHMM55JTR98j0CYhGMHcc3f9VBbBshVF32GUrI5tGHUiIIg4UbDFYSoXbweVZDtg4WQNFM8QwOpVax_KF\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\ncloud \"Batasan Jaringan AWS Cloud\" {\r\n    [Webhook Ingesti] sebagai webhook\r\n    queue \"Kelompok Apache Kafka\" sebagai broker\r\n    [Pekerja Acara Pemroses Aliran] sebagai worker\r\n    database \"Danau Data Amazon S3\" sebagai storage\r\n}\r\n\r\ndatabase \"Gudang Data Perusahaan\" sebagai redshift\r\n\r\n' Mekanisme alur pipa pemrosesan\r\n[Aplikasi Klien Eksternal] --&gt; webhook : \"POST \/telemetri\"\r\nwebhook -kanan-&gt; broker : \"Terbitkan log mentah\"\r\n\r\nbroker ..&gt; worker : \"Konsumsi aliran data topik\"\r\nworker --&gt; storage : \"Tulis file Parquet terkompresi\"\r\n\r\nstorage ..&gt; redshift : \"Sinkronisasi ETL Malam Hari\"\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:JLAxRjmm4Em5w1yMQbATKwHBOLY9ZJmkHWJS0IuC5wFJdiJmfIn914YGVmyfwNnXjUJES6Q7l0iH4fCrTNKoFWtKV414WAEl4EN6NBHF1_fOUWtzgIlAw_c9-ybxJL_So26g5mhSOuIYNsjZXVrCd9YQFHjlvunkPvmcfZtE6iqhfHUlMRQBEyxr3r1xWe0wjk831sgD4hZ_PBoySeRijqV8GlTmI7IVzzHQ_FQE3k-kEY5wmSXrzRUkwkhA-fG6k76bTImfO0BSbISyX4cTOs6zeKVMS2fO9fWaDAiPD6ysuUhgkPsDqWYAzaQnemST8ek3UQ7TxlQI3xsdflj-EDBRo8OjHr5DNLsQkom1bz5hD0LyPEbLpETa_4YMNSJK54SRvERcTWkbeFVUXMIp1oovBH5HzBFIHMM55JTR98j0CYhGMHcc3f9VBbBshVF32GUrI5tGHUiIIg4UbDFYSoXbweVZDtg4WQNFM8QwOpVax_KF\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:HLAnRkCm3DqD-1y8BpUb7RfrADfBCnokQ0EuW8UY0sCpjc1PT2dfqhIuVp_AYd6Q2F7nyRqdtVk04k9aowAr73ke7feQjalvJE74Ci9FZgv3ELVmNHQWv-sNwya7mmuQEWpCupkWXrEkC-OZKYHbcx4T27xZSKIbZJwGL0by41v9Bdnr4C89zi8jUSy2kp_a0ZIwdIHpBsM6TnZmW3wnJ_Yb8keRUDGxUCAH5d8VMB2dilXR5cNn7xzbcRKJAECR51eu-ZmarFd174CQ-R5gCQw7sSnaZICuMZx1HEs0phI-BDvsdsh7eLLd9Wb-cETts6pkrYZW5ghzI_qAru4iJHGqnB9Ocnin_H0KdRDOmF5WZHz0y0IMUrybCPVsrTNT9OQ4tBBpSI88F9jsYKHTfnJJWenAGYv9f8b6Z1flUPf5ZL47UnHzfG17OoblMj5frHf76drEGkqPTgzFK9zTEmWxyuNf1-ZSFRbEVz0_\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"prQSjVe\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-589\" decoding=\"async\" height=\"562\" loading=\"lazy\" sizes=\"auto, (max-width: 559px) 100vw, 559px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190035a60b3.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190035a60b3.png 559w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190035a60b3-298x300.png 298w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190035a60b3-150x150.png 150w\" width=\"559\"\/><\/p>\n<p><strong>Analisis Sintaks:<\/strong> Contoh ini memperkenalkan <code>cloud<\/code> dan <code>queue<\/code> bentuk, memberikan petunjuk visual langsung bagi pengembang mengenai topologi struktural. Penggunaan penggantian panah horizontal <code>-kanan-&gt;<\/code> memastikan bahwa aliran ingesti data berjalan lancar dari kiri ke kanan melintasi kisi jaringan, sementara ketergantungan putus (<code>..&gt;<\/code>) secara akurat merepresentasikan komunikasi yang terpisah dan asinkron.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apa itu Diagram Komponen? Sebuah Diagram Komponen adalah diagram struktural diagram UML yang memetakan organisasi modular tingkat tinggi dari suatu sistem perangkat lunak. Sebagai komponen penting dalam spesifikasi Bahasa Pemodelan Terpadu (UML), jenis diagram tipe diagram UMLmemvisualisasikan bagaimana modul kode&#8230;<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":7,"template":"","meta":{"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}}},"ld_collection":[14],"class_list":["post-2120","ld_docs","type-ld_docs","status-publish","hentry","ld_collection-vpascode-docs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PlantUML Component Diagram | VPasCode Text to Diagram Guide<\/title>\n<meta name=\"description\" content=\"Document software sub-systems and module relationships with PlantUML component diagrams in VPasCode, a free diagram-as-code tool.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PlantUML Component Diagram | VPasCode Text to Diagram Guide\" \/>\n<meta property=\"og:description\" content=\"Document software sub-systems and module relationships with PlantUML component diagrams in VPasCode, a free diagram-as-code tool.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/\" \/>\n<meta property=\"og:site_name\" content=\"VPasCode\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/\",\"name\":\"PlantUML Component Diagram | VPasCode Text to Diagram Guide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a18fff7df724.png\",\"datePublished\":\"2026-05-26T07:21:24+00:00\",\"description\":\"Document software sub-systems and module relationships with PlantUML component diagrams in VPasCode, a free diagram-as-code tool.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a18fff7df724.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a18fff7df724.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-component-diagram-syntax-guide\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lean Docs\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/%ld_collection%\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Panduan Sintaks Diagram Komponen PlantUML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#website\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/\",\"name\":\"VPasCode\",\"description\":\"by Visual Paradigm\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#organization\",\"name\":\"VPasCode\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/wp-content\\\/uploads\\\/sites\\\/7\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/wp-content\\\/uploads\\\/sites\\\/7\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"width\":128,\"height\":138,\"caption\":\"VPasCode\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PlantUML Component Diagram | VPasCode Text to Diagram Guide","description":"Document software sub-systems and module relationships with PlantUML component diagrams in VPasCode, a free diagram-as-code tool.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/","og_locale":"id_ID","og_type":"article","og_title":"PlantUML Component Diagram | VPasCode Text to Diagram Guide","og_description":"Document software sub-systems and module relationships with PlantUML component diagrams in VPasCode, a free diagram-as-code tool.","og_url":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/","og_site_name":"VPasCode","og_image":[{"url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Estimasi waktu membaca":"4 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/","url":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/","name":"PlantUML Component Diagram | VPasCode Text to Diagram Guide","isPartOf":{"@id":"https:\/\/www.vpascode.com\/id\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724.png","datePublished":"2026-05-26T07:21:24+00:00","description":"Document software sub-systems and module relationships with PlantUML component diagrams in VPasCode, a free diagram-as-code tool.","breadcrumb":{"@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/#primaryimage","url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724.png","contentUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a18fff7df724.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-component-diagram-syntax-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vpascode.com\/id\/"},{"@type":"ListItem","position":2,"name":"Lean Docs","item":"https:\/\/www.vpascode.com\/id\/docs\/%ld_collection%\/"},{"@type":"ListItem","position":3,"name":"Panduan Sintaks Diagram Komponen PlantUML"}]},{"@type":"WebSite","@id":"https:\/\/www.vpascode.com\/id\/#website","url":"https:\/\/www.vpascode.com\/id\/","name":"VPasCode","description":"by Visual Paradigm","publisher":{"@id":"https:\/\/www.vpascode.com\/id\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vpascode.com\/id\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Organization","@id":"https:\/\/www.vpascode.com\/id\/#organization","name":"VPasCode","url":"https:\/\/www.vpascode.com\/id\/","logo":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.vpascode.com\/id\/#\/schema\/logo\/image\/","url":"https:\/\/www.vpascode.com\/id\/wp-content\/uploads\/sites\/7\/2026\/06\/cropped-vp-online-logo-v1.png","contentUrl":"https:\/\/www.vpascode.com\/id\/wp-content\/uploads\/sites\/7\/2026\/06\/cropped-vp-online-logo-v1.png","width":128,"height":138,"caption":"VPasCode"},"image":{"@id":"https:\/\/www.vpascode.com\/id\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/ld_docs\/2120","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/ld_docs"}],"about":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/types\/ld_docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/users\/4"}],"wp:attachment":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/media?parent=2120"}],"wp:term":[{"taxonomy":"ld_collection","embeddable":true,"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/ld_collection?post=2120"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}