{"id":11739,"date":"2026-09-07T10:50:23","date_gmt":"2026-09-07T02:50:23","guid":{"rendered":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/"},"modified":"2026-09-07T10:50:23","modified_gmt":"2026-09-07T02:50:23","slug":"from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm","status":"publish","type":"post","link":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/","title":{"rendered":"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm"},"content":{"rendered":"<div class=\"toastui-editor-main toastui-editor-md-mode\">\n<div class=\"toastui-editor-main-container\">\n<div class=\"toastui-editor-md-container toastui-editor-md-vertical-style\">\n<div class=\"toastui-editor-md-preview\">\n<div class=\"toastui-editor-contents\">\n<h2 data-nodeid=\"1069\">Gi\u1edbi thi\u1ec7u<\/h2>\n<p data-nodeid=\"1070\">Trong ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m hi\u1ec7n \u0111\u1ea1i, t\u00e0i li\u1ec7u th\u01b0\u1eddng tr\u1edf th\u00e0nh n\u00fat th\u1eaft c\u1ed5 chai. C\u00e1c c\u00f4ng c\u1ee5 v\u1ebd s\u01a1 \u0111\u1ed3 truy\u1ec1n th\u1ed1ng \u0111\u00f2i h\u1ecfi n\u1ed7 l\u1ef1c k\u00e9o th\u1ea3 th\u1ee7 c\u00f4ng, d\u1eabn \u0111\u1ebfn c\u00e1c h\u00ecnh \u1ea3nh t\u0129nh nhanh ch\u00f3ng tr\u1edf n\u00ean l\u1ed7i th\u1eddi khi h\u1ec7 th\u1ed1ng ph\u00e1t tri\u1ec3n. Trong khi \u0111\u00f3, c\u00e1c nh\u00f3m k\u1ef9 thu\u1eadt ng\u00e0y c\u00e0ng \u01b0a chu\u1ed9ng quy tr\u00ecnh l\u00e0m vi\u1ec7c t\u1eadp trung v\u00e0o m\u00e3, n\u01a1i m\u1ecdi th\u1ee9\u2014t\u1eeb c\u01a1 s\u1edf h\u1ea1 t\u1ea7ng \u0111\u1ebfn logic \u1ee9ng d\u1ee5ng\u2014\u0111\u1ec1u \u0111\u01b0\u1ee3c ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n v\u00e0 c\u00f3 th\u1ec3 t\u00e1i t\u1ea1o.<\/p>\n<p data-nodeid=\"1071\">Visual Paradigm l\u1ea5p \u0111\u1ea7y kho\u1ea3ng tr\u1ed1ng n\u00e0y b\u1eb1ng c\u00e1ch k\u1ebft h\u1ee3p ba kh\u1ea3 n\u0103ng m\u1ea1nh m\u1ebd: <strong data-nodeid=\"1190\">T\u1ea1o s\u01a1 \u0111\u1ed3 h\u1ed7 tr\u1ee3 b\u1edfi AI<\/strong>,\u00a0<strong data-nodeid=\"1191\">VPasCode (S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3)<\/strong>, v\u00e0 <strong data-nodeid=\"1192\">OpenDocs (T\u00e0i li\u1ec7u S\u1ed1ng)<\/strong>. H\u1ec7 sinh th\u00e1i t\u00edch h\u1ee3p n\u00e0y cho ph\u00e9p c\u00e1c nh\u00f3m t\u1ea1o s\u01a1 \u0111\u1ed3 ki\u1ebfn tr\u00fac t\u1eeb c\u00e1c y\u00eau c\u1ea7u b\u1eb1ng ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean, tinh ch\u1ec9nh ch\u00fang b\u1eb1ng c\u00fa ph\u00e1p d\u1ef1a tr\u00ean v\u0103n b\u1ea3n nh\u01b0 PlantUML, v\u00e0 xu\u1ea5t b\u1ea3n ch\u00fang d\u01b0\u1edbi d\u1ea1ng t\u00e0i li\u1ec7u s\u1ed1ng, lu\u00f4n \u0111\u01b0\u1ee3c c\u1eadp nh\u1eadt.<\/p>\n<p data-nodeid=\"1072\">H\u01b0\u1edbng d\u1eabn n\u00e0y kh\u00e1m ph\u00e1 c\u00e1ch t\u1eadn d\u1ee5ng quy tr\u00ecnh l\u00e0m vi\u1ec7c n\u00e0y \u0111\u1ec3 lo\u1ea1i b\u1ecf s\u1ef1 c\u1ed3ng k\u1ec1nh trong xu\u1ea5t th\u1ee7 c\u00f4ng, gi\u1eef cho t\u00e0i li\u1ec7u \u0111\u1ed3ng b\u1ed9 v\u1edbi m\u00e3, v\u00e0 trao quy\u1ec1n cho c\u1ea3 c\u00e1c b\u00ean li\u00ean quan k\u1ef9 thu\u1eadt v\u00e0 phi k\u1ef9 thu\u1eadt v\u1edbi c\u00e1c h\u00ecnh \u1ea3nh tr\u1ef1c quan r\u00f5 r\u00e0ng, d\u1ec5 ti\u1ebfp c\u1eadn.<\/p>\n<hr data-nodeid=\"1073\"\/>\n<h2 data-nodeid=\"1074\">C\u00e1c Kh\u00e1i ni\u1ec7m Ch\u00ednh<\/h2>\n<h3 data-nodeid=\"1075\">1. T\u1ea1o s\u01a1 \u0111\u1ed3 h\u1ed7 tr\u1ee3 b\u1edfi AI<\/h3>\n<p data-nodeid=\"1076\">C\u00e1c tr\u1ee3 l\u00fd \u1ea3o AI t\u00edch h\u1ee3p s\u1eb5n c\u1ee7a Visual Paradigm bi\u1ebfn c\u00e1c m\u00f4 t\u1ea3 b\u1eb1ng ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean th\u00e0nh c\u00e1c s\u01a1 \u0111\u1ed3 UML ho\u1eb7c ki\u1ebfn tr\u00fac c\u00f3 c\u1ea5u tr\u00fac. \u0110i\u1ec1u n\u00e0y lo\u1ea1i b\u1ecf g\u00e1nh n\u1eb7ng ban \u0111\u1ea7u c\u1ee7a vi\u1ec7c b\u1ed1 tr\u00ed th\u1ee7 c\u00f4ng v\u00e0 cho ph\u00e9p t\u1ea1o m\u1eabu nhanh c\u00e1c thi\u1ebft k\u1ebf h\u1ec7 th\u1ed1ng.<\/p>\n<p data-nodeid=\"1077\"><strong data-nodeid=\"1202\">V\u00ed d\u1ee5 v\u1ec1 Tr\u01b0\u1eddng h\u1ee3p S\u1eed d\u1ee5ng:<\/strong><\/p>\n<blockquote data-nodeid=\"1078\">\n<p data-nodeid=\"1079\"><em data-nodeid=\"1208\">&#8220;T\u1ea1o m\u1ed9t s\u01a1 \u0111\u1ed3 tr\u00ecnh t\u1ef1 hi\u1ec3n th\u1ecb ng\u01b0\u1eddi d\u00f9ng \u0111\u0103ng nh\u1eadp, trong \u0111\u00f3 giao di\u1ec7n tr\u01b0\u1edbc g\u1eedi th\u00f4ng tin x\u00e1c th\u1ef1c \u0111\u1ebfn d\u1ecbch v\u1ee5 x\u00e1c th\u1ef1c, d\u1ecbch v\u1ee5 n\u00e0y x\u00e1c minh v\u1edbi c\u01a1 s\u1edf d\u1eef li\u1ec7u v\u00e0 tr\u1ea3 v\u1ec1 m\u00e3 th\u00f4ng b\u00e1o JWT.&#8221;<\/em><\/p>\n<\/blockquote>\n<p data-nodeid=\"1080\">AI t\u1ea1o ra m\u00e3 PlantUML t\u01b0\u01a1ng \u1ee9ng ngay l\u1eadp t\u1ee9c, sau \u0111\u00f3 c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c tinh ch\u1ec9nh th\u00eam.<\/p>\n<h3 data-nodeid=\"1081\">2. VPasCode: N\u1ec1n t\u1ea3ng S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3<\/h3>\n<p data-nodeid=\"1082\">VPasCode l\u00e0 m\u1ed9t tr\u00ecnh so\u1ea1n th\u1ea3o d\u1ef1a tr\u00ean tr\u00ecnh duy\u1ec7t k\u1ebft h\u1ee3p tr\u00ecnh so\u1ea1n th\u1ea3o v\u0103n b\u1ea3n tr\u1ef1c ti\u1ebfp v\u1edbi kh\u1ea3 n\u0103ng hi\u1ec3n th\u1ecb tr\u1ef1c quan theo th\u1eddi gian th\u1ef1c. N\u00f3 h\u1ed7 tr\u1ee3 nhi\u1ec1u c\u00fa ph\u00e1p chuy\u1ec3n \u0111\u1ed5i t\u1eeb v\u0103n b\u1ea3n sang s\u01a1 \u0111\u1ed3, bao g\u1ed3m:<\/p>\n<ul data-nodeid=\"1083\">\n<li data-nodeid=\"1084\">\n<p data-nodeid=\"1085\"><strong data-nodeid=\"1216\">PlantUML<\/strong> (ph\u1ed5 bi\u1ebfn nh\u1ea5t cho UML)<\/p>\n<\/li>\n<li data-nodeid=\"1086\">\n<p data-nodeid=\"1087\"><strong data-nodeid=\"1221\">Mermaid<\/strong> (tuy\u1ec7t v\u1eddi cho s\u01a1 \u0111\u1ed3 quy tr\u00ecnh v\u00e0 c\u00e1c s\u01a1 \u0111\u1ed3 \u0111\u01a1n gi\u1ea3n)<\/p>\n<\/li>\n<li data-nodeid=\"1088\">\n<p data-nodeid=\"1089\"><strong data-nodeid=\"1226\">Graphviz<\/strong> (l\u00fd t\u01b0\u1edfng cho c\u00e1c c\u1ea5u tr\u00fac \u0111\u1ed3 th\u1ecb ph\u1ee9c t\u1ea1p)<\/p>\n<\/li>\n<li data-nodeid=\"1090\">\n<p data-nodeid=\"1091\"><strong data-nodeid=\"1231\">D2<\/strong> (v\u1ebd s\u01a1 \u0111\u1ed3 khai b\u00e1o)<\/p>\n<\/li>\n<\/ul>\n<p data-nodeid=\"1092\">V\u00ec c\u00e1c s\u01a1 \u0111\u1ed3 \u0111\u01b0\u1ee3c bi\u1ec3u di\u1ec5n d\u01b0\u1edbi d\u1ea1ng k\u1ecbch b\u1ea3n v\u0103n b\u1ea3n, ch\u00fang t\u00edch h\u1ee3p li\u1ec1n m\u1ea1ch v\u00e0o c\u00e1c kho l\u01b0u tr\u1eef Git b\u00ean c\u1ea1nh m\u00e3 ngu\u1ed3n \u1ee9ng d\u1ee5ng, cho ph\u00e9p ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n, r\u00e0 so\u00e1t m\u00e3 v\u00e0 ch\u1ec9nh s\u1eeda h\u1ee3p t\u00e1c.<\/p>\n<h3 data-nodeid=\"1093\">3. OpenDocs: T\u00e0i li\u1ec7u S\u1ed1ng<\/h3>\n<p data-nodeid=\"1094\">OpenDocs thay th\u1ebf vi\u1ec7c t\u1ea3i l\u00ean h\u00ecnh \u1ea3nh t\u0129nh b\u1eb1ng c\u00e1c th\u00e0nh ph\u1ea7n s\u1ed1ng v\u00e0 k\u1ebft n\u1ed1i. Khi b\u1ea1n \u0111\u1ea9y c\u00e1c c\u1eadp nh\u1eadt v\u00e0o m\u00e3 s\u01a1 \u0111\u1ed3 c\u1ee7a m\u00ecnh trong VPasCode, nh\u1eefng thay \u0111\u1ed5i \u0111\u00f3 s\u1ebd t\u1ef1 \u0111\u1ed9ng ph\u1ea3n \u00e1nh tr\u00ean c\u00e1c trang OpenDocs c\u1ee7a b\u1ea1n. \u0110i\u1ec1u n\u00e0y \u0111\u1ea3m b\u1ea3o t\u00e0i li\u1ec7u lu\u00f4n \u0111\u01b0\u1ee3c \u0111\u1ed3ng b\u1ed9 v\u0129nh vi\u1ec5n v\u1edbi ki\u1ebfn tr\u00fac h\u1ec7 th\u1ed1ng th\u1ef1c t\u1ebf.<\/p>\n<h3 data-nodeid=\"1095\">4. Quy tr\u00ecnh OpenDocs<\/h3>\n<p data-nodeid=\"1096\">Quy tr\u00ecnh n\u00e0y k\u1ebft h\u1ee3p vi\u1ec7c vi\u1ebft m\u00e3 v\u00e0 xu\u1ea5t b\u1ea3n:<\/p>\n<ol data-nodeid=\"1097\">\n<li data-nodeid=\"1098\">\n<p data-nodeid=\"1099\"><strong data-nodeid=\"1241\">T\u1ea1o<\/strong>: S\u1eed d\u1ee5ng AI \u0111\u1ec3 t\u1ea1o logic s\u01a1 \u0111\u1ed3 ban \u0111\u1ea7u.<\/p>\n<\/li>\n<li data-nodeid=\"1100\">\n<p data-nodeid=\"1101\"><strong data-nodeid=\"1246\">Bi\u00ean so\u1ea1n<\/strong>: Tinh ch\u1ec9nh c\u00fa ph\u00e1p, ki\u1ec3u d\u00e1ng ho\u1eb7c c\u1ea5u tr\u00fac trong VPasCode.<\/p>\n<\/li>\n<li data-nodeid=\"1102\">\n<p data-nodeid=\"1103\"><strong data-nodeid=\"1251\">Xu\u1ea5t b\u1ea3n<\/strong>: \u0110\u1ea9y c\u1eadp nh\u1eadt tr\u1ef1c ti\u1ebfp v\u00e0o OpenDocs m\u00e0 kh\u00f4ng c\u1ea7n xu\u1ea5t th\u1ee7 c\u00f4ng.<\/p>\n<\/li>\n<\/ol>\n<p><img alt=\"\" class=\"alignnone size-full wp-image-25706\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png 1402w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606-300x240.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606-1030x824.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606-768x615.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606-150x120.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606-400x320.png 400w\" width=\"1402\"\/><\/p>\n<hr data-nodeid=\"1104\"\/>\n<h2 data-nodeid=\"1105\">V\u00ed d\u1ee5 th\u1ef1c t\u1ebf s\u1eed d\u1ee5ng PlantUML<\/h2>\n<p data-nodeid=\"1106\">D\u01b0\u1edbi \u0111\u00e2y l\u00e0 c\u00e1c v\u00ed d\u1ee5 th\u1ef1c t\u1ebf minh h\u1ecda c\u00e1ch t\u1ea1o c\u00e1c s\u01a1 \u0111\u1ed3 ph\u1ed5 bi\u1ebfn b\u1eb1ng PlantUML trong h\u1ec7 sinh th\u00e1i Visual Paradigm.<\/p>\n<h3 data-nodeid=\"1107\">V\u00ed d\u1ee5 1: S\u01a1 \u0111\u1ed3 l\u1edbp cho h\u1ec7 th\u1ed1ng th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed<\/h3>\n<p id=\"zRJjQcD\"><img alt=\"\" class=\"alignnone size-full wp-image-25708\" decoding=\"async\" height=\"869\" loading=\"lazy\" sizes=\"auto, (max-width: 1918px) 100vw, 1918px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871.png 1918w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871-300x136.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871-1030x467.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871-768x348.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871-1536x696.png 1536w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871-150x68.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e23e432871-400x181.png 400w\" width=\"1918\"\/><\/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:ZPA_QiGm3CPtWz_1PBgst71hXdAbjtHgeNq1dIEEWF_aB7aefUzUEx5pnUbG3pRw9FJZatmaXi3H6Ycq0IBr78cznQ2-f53fFEWYl0ozUkSmkaj9EB3OI6XXD8qs6T3u6WOCkpiflgMef5bRCJv76yQide0JADz5PSzWdgoFZfFkuzdKZ0QZeqcL7xca0Ru5FqJDAt9QulyOcyAeiM5Ta4_8oJ2r7FYqw7vnbdZ3WRySf7rmf0tUQoGgZLVSkglkqAdz_b5rzrqPQw_ckPCKIvmpjQBEeLVQksJ0tQfgd_HM5xqAU8rZoBsEw8RqLtu0\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong 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:ZPA_QiGm3CPtWz_1PBgst71hXdAbjtHgeNq1dIEEWF_aB7aefUzUEx5pnUbG3pRw9FJZatmaXi3H6Ycq0IBr78cznQ2-f53fFEWYl0ozUkSmkaj9EB3OI6XXD8qs6T3u6WOCkpiflgMef5bRCJv76yQide0JADz5PSzWdgoFZfFkuzdKZ0QZeqcL7xca0Ru5FqJDAt9QulyOcyAeiM5Ta4_8oJ2r7FYqw7vnbdZ3WRySf7rmf0tUQoGgZLVSkglkqAdz_b5rzrqPQw_ckPCKIvmpjQBEeLVQksJ0tQfgd_HM5xqAU8rZoBsEw8RqLtu0\" \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\" data-nodeid=\"1108\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nclass Customer {\r\n    +customerId: String\r\n    +name: String\r\n    +email: String\r\n    +placeOrder()\r\n}\r\n\r\nclass Order {\r\n    +orderId: String\r\n    +orderDate: Date\r\n    +totalAmount: Double\r\n    +calculateTotal()\r\n}\r\n\r\nclass Product {\r\n    +productId: String\r\n    +name: String\r\n    +price: Double\r\n    +getDetails()\r\n}\r\n\r\nclass Payment {\r\n    +paymentId: String\r\n    +amount: Double\r\n    +status: String\r\n    +processPayment()\r\n}\r\n\r\nCustomer \"1\" --&gt; \"*\" Order : places\r\nOrder \"*\" --&gt; \"*\" Product : contains\r\nOrder \"1\" --&gt; \"1\" Payment : requires\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:ZPA_QiGm3CPtWz_1PBgst71hXdAbjtHgeNq1dIEEWF_aB7aefUzUEx5pnUbG3pRw9FJZatmaXi3H6Ycq0IBr78cznQ2-f53fFEWYl0ozUkSmkaj9EB3OI6XXD8qs6T3u6WOCkpiflgMef5bRCJv76yQide0JADz5PSzWdgoFZfFkuzdKZ0QZeqcL7xca0Ru5FqJDAt9QulyOcyAeiM5Ta4_8oJ2r7FYqw7vnbdZ3WRySf7rmf0tUQoGgZLVSkglkqAdz_b5rzrqPQw_ckPCKIvmpjQBEeLVQksJ0tQfgd_HM5xqAU8rZoBsEw8RqLtu0\" \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:ZPA_QiGm3CPtWz_1PBgst71hXdAbjtHgeNq1dIEEWF_aB7aefUzUEx5pnUbG3pRw9FJZatmaXi3H6Ycq0IBr78cznQ2-f53fFEWYl0ozUkSmkaj9EB3OI6XXD8qs6T3u6WOCkpiflgMef5bRCJv76yQide0JADz5PSzWdgoFZfFkuzdKZ0QZeqcL7xca0Ru5FqJDAt9QulyOcyAeiM5Ta4_8oJ2r7FYqw7vnbdZ3WRySf7rmf0tUQoGgZLVSkglkqAdz_b5rzrqPQw_ckPCKIvmpjQBEeLVQksJ0tQfgd_HM5xqAU8rZoBsEw8RqLtu0\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"1109\"><strong data-nodeid=\"1258\">Quy tr\u00ecnh:<\/strong><\/p>\n<ol data-nodeid=\"1110\">\n<li data-nodeid=\"1111\">\n<p data-nodeid=\"1112\">H\u1ecfi tr\u1ee3 l\u00fd AI:<em data-nodeid=\"1265\">\u201cT\u1ea1o m\u1ed9t s\u01a1 \u0111\u1ed3 l\u1edbp cho h\u1ec7 th\u1ed1ng th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed v\u1edbi c\u00e1c l\u1edbp Customer, Order, Product v\u00e0 Payment.\u201d<\/em><\/p>\n<\/li>\n<li data-nodeid=\"1113\">\n<p data-nodeid=\"1114\">Xem l\u1ea1i v\u00e0 tinh ch\u1ec9nh m\u00e3 PlantUML \u0111\u00e3 t\u1ea1o trong VPasCode.<\/p>\n<\/li>\n<li data-nodeid=\"1115\">\n<p data-nodeid=\"1116\">Xu\u1ea5t b\u1ea3n l\u00ean OpenDocs \u0111\u1ec3 c\u00e1c b\u00ean li\u00ean quan xem x\u00e9t.<\/p>\n<\/li>\n<\/ol>\n<hr data-nodeid=\"1117\"\/>\n<h3 data-nodeid=\"1118\">V\u00ed d\u1ee5 2: S\u01a1 \u0111\u1ed3 tr\u00ecnh t\u1ef1 cho x\u00e1c th\u1ef1c ng\u01b0\u1eddi d\u00f9ng<\/h3>\n<p id=\"KxLulvz\"><img alt=\"\" class=\"alignnone size-full wp-image-25709\" decoding=\"async\" height=\"867\" loading=\"lazy\" sizes=\"auto, (max-width: 1915px) 100vw, 1915px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639.png 1915w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639-300x136.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639-1030x466.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639-768x348.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639-1536x695.png 1536w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639-150x68.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e244cee639-400x181.png 400w\" width=\"1915\"\/><\/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:bPBDJiCm48JlblmEgzmhxZcWDWGa418_BN1UqgLOk8wrQnVrxLadROegSI27H1b_dl5aCvU4dFBMMuDTwXbUXDYQgABhNCIGeBhXFYGAQrZ4M04A78KpRf7J9oo9TwwZWIk2DMjC-8v2K1LlQ0-l0z4srbWpwBFBoRU6QtqoT4nh2icX5skcKoXOZ6juV5YkuCBt6nUi6S9rgMrgUCh4UyXoRj4sC9jsFrFA74Qg7F5eCG6lw9qk44GK-UvPww9FemnNltr1hsdpgSGXuUvj1Qd_eZ22fnuAb-Ort9SA8BdhIEGZwop8w_Uw3Rl_PX6ppd2hDhYXF_DQ9z7ZVgGrh4nohdVz3Nu0\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong 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:bPBDJiCm48JlblmEgzmhxZcWDWGa418_BN1UqgLOk8wrQnVrxLadROegSI27H1b_dl5aCvU4dFBMMuDTwXbUXDYQgABhNCIGeBhXFYGAQrZ4M04A78KpRf7J9oo9TwwZWIk2DMjC-8v2K1LlQ0-l0z4srbWpwBFBoRU6QtqoT4nh2icX5skcKoXOZ6juV5YkuCBt6nUi6S9rgMrgUCh4UyXoRj4sC9jsFrFA74Qg7F5eCG6lw9qk44GK-UvPww9FemnNltr1hsdpgSGXuUvj1Qd_eZ22fnuAb-Ort9SA8BdhIEGZwop8w_Uw3Rl_PX6ppd2hDhYXF_DQ9z7ZVgGrh4nohdVz3Nu0\" \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\" data-nodeid=\"1119\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nactor User\r\nparticipant \"Frontend App\" as Frontend\r\nparticipant \"Auth Service\" as Auth\r\ndatabase \"User Database\" as DB\r\n\r\nUser -&gt; Frontend: Enter credentials\r\nFrontend -&gt; Auth: POST \/login\r\nAuth -&gt; DB: Query user credentials\r\nDB --&gt; Auth: Return user data\r\nAuth --&gt; Auth: Validate password\r\nalt Valid Credentials\r\n    Auth --&gt; Frontend: Return JWT token\r\n    Frontend --&gt; User: Login successful\r\nelse Invalid Credentials\r\n    Auth --&gt; Frontend: Return error message\r\n    Frontend --&gt; User: Display error\r\nend\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:bPBDJiCm48JlblmEgzmhxZcWDWGa418_BN1UqgLOk8wrQnVrxLadROegSI27H1b_dl5aCvU4dFBMMuDTwXbUXDYQgABhNCIGeBhXFYGAQrZ4M04A78KpRf7J9oo9TwwZWIk2DMjC-8v2K1LlQ0-l0z4srbWpwBFBoRU6QtqoT4nh2icX5skcKoXOZ6juV5YkuCBt6nUi6S9rgMrgUCh4UyXoRj4sC9jsFrFA74Qg7F5eCG6lw9qk44GK-UvPww9FemnNltr1hsdpgSGXuUvj1Qd_eZ22fnuAb-Ort9SA8BdhIEGZwop8w_Uw3Rl_PX6ppd2hDhYXF_DQ9z7ZVgGrh4nohdVz3Nu0\" \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:bPBDJiCm48JlblmEgzmhxZcWDWGa418_BN1UqgLOk8wrQnVrxLadROegSI27H1b_dl5aCvU4dFBMMuDTwXbUXDYQgABhNCIGeBhXFYGAQrZ4M04A78KpRf7J9oo9TwwZWIk2DMjC-8v2K1LlQ0-l0z4srbWpwBFBoRU6QtqoT4nh2icX5skcKoXOZ6juV5YkuCBt6nUi6S9rgMrgUCh4UyXoRj4sC9jsFrFA74Qg7F5eCG6lw9qk44GK-UvPww9FemnNltr1hsdpgSGXuUvj1Qd_eZ22fnuAb-Ort9SA8BdhIEGZwop8w_Uw3Rl_PX6ppd2hDhYXF_DQ9z7ZVgGrh4nohdVz3Nu0\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"1120\"><strong data-nodeid=\"1272\">Quy tr\u00ecnh:<\/strong><\/p>\n<ol data-nodeid=\"1121\">\n<li data-nodeid=\"1122\">\n<p data-nodeid=\"1123\">G\u1ee3i \u00fd cho AI:<em data-nodeid=\"1279\">\u201cH\u00e3y cho t\u00f4i xem s\u01a1 \u0111\u1ed3 tr\u00ecnh t\u1ef1 cho \u0111\u0103ng nh\u1eadp ng\u01b0\u1eddi d\u00f9ng v\u1edbi x\u00e1c th\u1ef1c JWT.\u201d<\/em><\/p>\n<\/li>\n<li data-nodeid=\"1124\">\n<p data-nodeid=\"1125\">\u0110i\u1ec1u ch\u1ec9nh th\u1eddi gian, th\u00eam x\u1eed l\u00fd l\u1ed7i ho\u1eb7c thay \u0111\u1ed5i c\u00e1c th\u00e0nh vi\u00ean tham gia trong VPasCode.<\/p>\n<\/li>\n<li data-nodeid=\"1126\">\n<p data-nodeid=\"1127\">Nh\u00fang s\u01a1 \u0111\u1ed3 tr\u1ef1c ti\u1ebfp v\u00e0o h\u01b0\u1edbng d\u1eabn x\u00e1c th\u1ef1c OpenDocs c\u1ee7a b\u1ea1n.<\/p>\n<\/li>\n<\/ol>\n<hr data-nodeid=\"1128\"\/>\n<h3 data-nodeid=\"1129\">V\u00ed d\u1ee5 3: Bi\u1ec3u \u0111\u1ed3 th\u00e0nh ph\u1ea7n cho ki\u1ebfn tr\u00fac vi d\u1ecbch v\u1ee5<\/h3>\n<p id=\"AFerhKT\"><img alt=\"\" class=\"alignnone size-full wp-image-25710\" decoding=\"async\" height=\"868\" loading=\"lazy\" sizes=\"auto, (max-width: 1919px) 100vw, 1919px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c.png 1919w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c-300x136.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c-1030x466.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c-768x347.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c-1536x695.png 1536w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c-150x68.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24b41368c-400x181.png 400w\" width=\"1919\"\/><\/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:RPBD2i8m48JlWRp3qdjVGQeKf2SBnPFqiBP1H5ibYPKYlhiXgJG_c-FC5sOof50QfNuDTywUsDtm8Y3RrXNiKOitpXbyE0DpJfxOSlRbpBlG23bTEw5M-gY4X4Lk5-qW-rIiSHx4g6Ev6YUZFkJi6M5cYHgXCOWNsnljZCguDh_SPR7kEX36lmTXhLsiQMi4Sq2URv8d4qGy086aSn0GDOu1WmAMz6Q8mftjhP4aEoAOXGXsLBHG8SRU_AWV\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong 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:RPBD2i8m48JlWRp3qdjVGQeKf2SBnPFqiBP1H5ibYPKYlhiXgJG_c-FC5sOof50QfNuDTywUsDtm8Y3RrXNiKOitpXbyE0DpJfxOSlRbpBlG23bTEw5M-gY4X4Lk5-qW-rIiSHx4g6Ev6YUZFkJi6M5cYHgXCOWNsnljZCguDh_SPR7kEX36lmTXhLsiQMi4Sq2URv8d4qGy086aSn0GDOu1WmAMz6Q8mftjhP4aEoAOXGXsLBHG8SRU_AWV\" \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\" data-nodeid=\"1130\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\npackage \"API Gateway\" {\r\n    [API Gateway]\r\n}\r\n\r\npackage \"Services\" {\r\n    [User Service]\r\n    [Order Service]\r\n    [Payment Service]\r\n    [Inventory Service]\r\n}\r\n\r\npackage \"Data Stores\" {\r\n    database \"User DB\"\r\n    database \"Order DB\"\r\n    database \"Payment DB\"\r\n    database \"Inventory DB\"\r\n}\r\n\r\n[API Gateway] --&gt; [User Service]\r\n[API Gateway] --&gt; [Order Service]\r\n[API Gateway] --&gt; [Payment Service]\r\n[API Gateway] --&gt; [Inventory Service]\r\n\r\n[User Service] --&gt; \"User DB\"\r\n[Order Service] --&gt; \"Order DB\"\r\n[Payment Service] --&gt; \"Payment DB\"\r\n[Inventory Service] --&gt; \"Inventory DB\"\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:RPBD2i8m48JlWRp3qdjVGQeKf2SBnPFqiBP1H5ibYPKYlhiXgJG_c-FC5sOof50QfNuDTywUsDtm8Y3RrXNiKOitpXbyE0DpJfxOSlRbpBlG23bTEw5M-gY4X4Lk5-qW-rIiSHx4g6Ev6YUZFkJi6M5cYHgXCOWNsnljZCguDh_SPR7kEX36lmTXhLsiQMi4Sq2URv8d4qGy086aSn0GDOu1WmAMz6Q8mftjhP4aEoAOXGXsLBHG8SRU_AWV\" \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:RPBD2i8m48JlWRp3qdjVGQeKf2SBnPFqiBP1H5ibYPKYlhiXgJG_c-FC5sOof50QfNuDTywUsDtm8Y3RrXNiKOitpXbyE0DpJfxOSlRbpBlG23bTEw5M-gY4X4Lk5-qW-rIiSHx4g6Ev6YUZFkJi6M5cYHgXCOWNsnljZCguDh_SPR7kEX36lmTXhLsiQMi4Sq2URv8d4qGy086aSn0GDOu1WmAMz6Q8mftjhP4aEoAOXGXsLBHG8SRU_AWV\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"1131\"><strong data-nodeid=\"1286\">Quy tr\u00ecnh:<\/strong><\/p>\n<ol data-nodeid=\"1132\">\n<li data-nodeid=\"1133\">\n<p data-nodeid=\"1134\">M\u00f4 t\u1ea3 c\u1ea5u tr\u00fac li\u00ean k\u1ebft vi d\u1ecbch v\u1ee5 c\u1ee7a b\u1ea1n cho tr\u1ee3 l\u00fd AI.<\/p>\n<\/li>\n<li data-nodeid=\"1135\">\n<p data-nodeid=\"1136\">Tinh ch\u1ec9nh ranh gi\u1edbi th\u00e0nh ph\u1ea7n v\u00e0 m\u1ed1i quan h\u1ec7 trong VPasCode.<\/p>\n<\/li>\n<li data-nodeid=\"1137\">\n<p data-nodeid=\"1138\">Xu\u1ea5t b\u1ea3n l\u00ean OpenDocs nh\u01b0 m\u1ed9t ph\u1ea7n c\u1ee7a h\u1ed3 s\u01a1 quy\u1ebft \u0111\u1ecbnh ki\u1ebfn tr\u00fac (ADRs).<\/p>\n<\/li>\n<\/ol>\n<hr data-nodeid=\"1139\"\/>\n<h3 data-nodeid=\"1140\">V\u00ed d\u1ee5 4: Bi\u1ec3u \u0111\u1ed3 ho\u1ea1t \u0111\u1ed9ng cho quy tr\u00ecnh x\u1eed l\u00fd \u0111\u01a1n h\u00e0ng<\/h3>\n<p id=\"AeQZmYk\"><img alt=\"\" class=\"alignnone size-full wp-image-25711\" decoding=\"async\" height=\"872\" loading=\"lazy\" sizes=\"auto, (max-width: 1916px) 100vw, 1916px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5.png 1916w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5-300x137.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5-1030x469.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5-768x350.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5-1536x699.png 1536w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5-150x68.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e24f9cd8e5-400x182.png 400w\" width=\"1916\"\/><\/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:TP7DReCm48JlIBp37iahm269E5Ivj54YzUwOGRWrTcGlIBnzryMb_oUlPkURNTk7o2hmDDgoUA_Aehv0myoWfz0XD6LXUggUbJMTuYpkTyG375KBuguiYEfsW7wbavlXs8UbIMBYJeoHZhCoLjqiVd52NX0HP5fonYQBv-0rOgIpMaP9p78Ap0fT9vqS_MJ_29M41pY4jB3iv8r6itMkWxblTrkroFw-rh0HL3d_6TGgfs7_1rnd-bJ-8Ej7pwPVg9t4Esxe1vYnRv0ynGiqVncrkhFt8AVyqni0\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong 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:TP7DReCm48JlIBp37iahm269E5Ivj54YzUwOGRWrTcGlIBnzryMb_oUlPkURNTk7o2hmDDgoUA_Aehv0myoWfz0XD6LXUggUbJMTuYpkTyG375KBuguiYEfsW7wbavlXs8UbIMBYJeoHZhCoLjqiVd52NX0HP5fonYQBv-0rOgIpMaP9p78Ap0fT9vqS_MJ_29M41pY4jB3iv8r6itMkWxblTrkroFw-rh0HL3d_6TGgfs7_1rnd-bJ-8Ej7pwPVg9t4Esxe1vYnRv0ynGiqVncrkhFt8AVyqni0\" \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\" data-nodeid=\"1141\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nstart\r\n:Receive Order;\r\nif (Validate Order?) then (yes)\r\n  :Check Inventory;\r\n  if (Item Available?) then (yes)\r\n    :Reserve Items;\r\n    :Process Payment;\r\n    if (Payment Successful?) then (yes)\r\n      :Generate Invoice;\r\n      :Ship Order;\r\n      stop\r\n    else (no)\r\n      :Cancel Order;\r\n      stop\r\n    endif\r\n  else (no)\r\n    :Notify Customer;\r\n    stop\r\n  endif\r\nelse (no)\r\n  :Reject Order;\r\n  stop\r\nendif\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TP7DReCm48JlIBp37iahm269E5Ivj54YzUwOGRWrTcGlIBnzryMb_oUlPkURNTk7o2hmDDgoUA_Aehv0myoWfz0XD6LXUggUbJMTuYpkTyG375KBuguiYEfsW7wbavlXs8UbIMBYJeoHZhCoLjqiVd52NX0HP5fonYQBv-0rOgIpMaP9p78Ap0fT9vqS_MJ_29M41pY4jB3iv8r6itMkWxblTrkroFw-rh0HL3d_6TGgfs7_1rnd-bJ-8Ej7pwPVg9t4Esxe1vYnRv0ynGiqVncrkhFt8AVyqni0\" \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:TP7DReCm48JlIBp37iahm269E5Ivj54YzUwOGRWrTcGlIBnzryMb_oUlPkURNTk7o2hmDDgoUA_Aehv0myoWfz0XD6LXUggUbJMTuYpkTyG375KBuguiYEfsW7wbavlXs8UbIMBYJeoHZhCoLjqiVd52NX0HP5fonYQBv-0rOgIpMaP9p78Ap0fT9vqS_MJ_29M41pY4jB3iv8r6itMkWxblTrkroFw-rh0HL3d_6TGgfs7_1rnd-bJ-8Ej7pwPVg9t4Esxe1vYnRv0ynGiqVncrkhFt8AVyqni0\" 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>Ch\u1ec9nh s\u1eeda PlantUML trong VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"1142\"><strong data-nodeid=\"1294\">Quy tr\u00ecnh:<\/strong><\/p>\n<ol data-nodeid=\"1143\">\n<li data-nodeid=\"1144\">\n<p data-nodeid=\"1145\">H\u1ecfi AI: <em data-nodeid=\"1301\">\u201cT\u1ea1o m\u1ed9t bi\u1ec3u \u0111\u1ed3 ho\u1ea1t \u0111\u1ed9ng cho quy tr\u00ecnh x\u1eed l\u00fd \u0111\u01a1n h\u00e0ng k\u00e8m theo ki\u1ec3m tra t\u1ed3n kho v\u00e0 x\u00e1c th\u1ef1c thanh to\u00e1n.\u201d<\/em><\/p>\n<\/li>\n<li data-nodeid=\"1146\">\n<p data-nodeid=\"1147\">Th\u00eam c\u00e1c \u0111i\u1ec3m ra quy\u1ebft \u0111\u1ecbnh v\u00e0 c\u00e1c tr\u01b0\u1eddng h\u1ee3p bi\u00ean trong VPasCode.<\/p>\n<\/li>\n<li data-nodeid=\"1148\">\n<p data-nodeid=\"1149\">Chia s\u1ebb qua OpenDocs v\u1edbi c\u00e1c \u0111\u1ed9i v\u1eadn h\u00e0nh v\u00e0 h\u1ed7 tr\u1ee3 kh\u00e1ch h\u00e0ng.<\/p>\n<\/li>\n<\/ol>\n<hr data-nodeid=\"1150\"\/>\n<h2 data-nodeid=\"1151\">Th\u1ef1c ti\u1ec5n t\u1ed1t nh\u1ea5t<\/h2>\n<p id=\"MWbwnls\"><img alt=\"\" class=\"alignnone size-full wp-image-25712\" decoding=\"async\" height=\"559\" loading=\"lazy\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e25792d92f.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e25792d92f.png 1024w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e25792d92f-300x164.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e25792d92f-768x419.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e25792d92f-150x82.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e25792d92f-400x218.png 400w\" width=\"1024\"\/><\/p>\n<h3 data-nodeid=\"1152\">1. B\u1eaft \u0111\u1ea7u v\u1edbi AI, Tinh ch\u1ec9nh b\u1eb1ng M\u00e3<\/h3>\n<p data-nodeid=\"1153\">S\u1eed d\u1ee5ng AI \u0111\u1ec3 t\u1ea1o b\u1ea3n m\u1eabu bi\u1ec3u \u0111\u1ed3 nhanh ch\u00f3ng, nh\u01b0ng lu\u00f4n xem x\u00e9t v\u00e0 tinh ch\u1ec9nh m\u00e3 PlantUML \u0111\u01b0\u1ee3c t\u1ea1o ra. AI cung c\u1ea5p m\u1ed9t \u0111i\u1ec3m kh\u1edfi \u0111\u1ea7u v\u1eefng ch\u1eafc, nh\u01b0ng s\u1ef1 gi\u00e1m s\u00e1t c\u1ee7a con ng\u01b0\u1eddi \u0111\u1ea3m b\u1ea3o t\u00ednh ch\u00ednh x\u00e1c v\u00e0 s\u1ef1 ph\u00f9 h\u1ee3p v\u1edbi c\u00e1c ti\u00eau chu\u1ea9n c\u1ee7a nh\u00f3m.<\/p>\n<h3 data-nodeid=\"1154\">2. Gi\u1eef cho c\u00e1c bi\u1ec3u \u0111\u1ed3 \u0111\u01a1n gi\u1ea3n v\u00e0 t\u1eadp trung<\/h3>\n<p data-nodeid=\"1155\">Tr\u00e1nh l\u00e0m qu\u00e1 t\u1ea3i bi\u1ec3u \u0111\u1ed3 b\u1eb1ng qu\u00e1 nhi\u1ec1u chi ti\u1ebft. H\u00e3y s\u1eed d\u1ee5ng nhi\u1ec1u bi\u1ec3u \u0111\u1ed3 t\u1eadp trung thay v\u00ec m\u1ed9t b\u1ea3n t\u1ed5ng quan kh\u1ed5ng l\u1ed3. V\u00ed d\u1ee5, h\u00e3y t\u00e1ch lu\u1ed3ng x\u00e1c th\u1ef1c kh\u1ecfi lu\u1ed3ng x\u1eed l\u00fd \u0111\u01a1n h\u00e0ng.<\/p>\n<h3 data-nodeid=\"1156\">3. Ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n cho c\u00e1c bi\u1ec3u \u0111\u1ed3 c\u1ee7a b\u1ea1n<\/h3>\n<p data-nodeid=\"1157\">L\u01b0u tr\u1eef t\u1ea5t c\u1ea3 c\u00e1c t\u1ec7p PlantUML trong kho l\u01b0u tr\u1eef Git c\u1ee7a b\u1ea1n c\u00f9ng v\u1edbi m\u00e3 \u1ee9ng d\u1ee5ng. \u0110i\u1ec1u n\u00e0y cho ph\u00e9p:<\/p>\n<ul data-nodeid=\"1158\">\n<li data-nodeid=\"1159\">\n<p data-nodeid=\"1160\">Kh\u1ea3 n\u0103ng truy v\u1ebft c\u00e1c quy\u1ebft \u0111\u1ecbnh thi\u1ebft k\u1ebf<\/p>\n<\/li>\n<li data-nodeid=\"1161\">\n<p data-nodeid=\"1162\">Xem x\u00e9t m\u00e3 h\u1ee3p t\u00e1c cho c\u00e1c thay \u0111\u1ed5i ki\u1ebfn tr\u00fac<\/p>\n<\/li>\n<li data-nodeid=\"1163\">\n<p data-nodeid=\"1164\">Kh\u1ea3 n\u0103ng ho\u00e0n t\u00e1c n\u1ebfu thi\u1ebft k\u1ebf c\u1ea7n \u0111\u01b0\u1ee3c s\u1eeda \u0111\u1ed5i<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"1165\">4. T\u1eadn d\u1ee5ng OpenDocs cho vi\u1ec7c giao ti\u1ebfp v\u1edbi c\u00e1c b\u00ean li\u00ean quan<\/h3>\n<p data-nodeid=\"1166\">S\u1eed d\u1ee5ng OpenDocs \u0111\u1ec3 chia s\u1ebb t\u00e0i li\u1ec7u s\u1ed1ng \u0111\u1ed9ng v\u1edbi c\u1ea3 c\u00e1c b\u00ean li\u00ean quan k\u1ef9 thu\u1eadt v\u00e0 phi k\u1ef9 thu\u1eadt. V\u00ec c\u00e1c s\u01a1 \u0111\u1ed3 \u0111\u01b0\u1ee3c c\u1eadp nh\u1eadt t\u1ef1 \u0111\u1ed9ng, b\u1ea1n lo\u1ea1i b\u1ecf nguy c\u01a1 chia s\u1ebb c\u00e1c h\u00ecnh ch\u1ee5p m\u00e0n h\u00ecnh \u0111\u00e3 l\u1ed7i th\u1eddi.<\/p>\n<h3 data-nodeid=\"1167\">5. Chu\u1ea9n h\u00f3a quy \u01b0\u1edbc \u0111\u1eb7t t\u00ean<\/h3>\n<p data-nodeid=\"1168\">X\u00e2y d\u1ef1ng c\u00e1c quy \u01b0\u1edbc \u0111\u1eb7t t\u00ean th\u1ed1ng nh\u1ea5t cho c\u00e1c l\u1edbp, th\u00e0nh ph\u1ea7n v\u00e0 m\u1ed1i quan h\u1ec7 tr\u00ean to\u00e0n \u0111\u1ed9i. \u0110i\u1ec1u n\u00e0y c\u1ea3i thi\u1ec7n kh\u1ea3 n\u0103ng \u0111\u1ecdc hi\u1ec3u v\u00e0 gi\u1ea3m s\u1ef1 nh\u1ea7m l\u1eabn khi nhi\u1ec1u k\u1ef9 s\u01b0 c\u00f9ng \u0111\u00f3ng g\u00f3p v\u00e0o c\u00e1c s\u01a1 \u0111\u1ed3.<\/p>\n<hr data-nodeid=\"1169\"\/>\n<h2 data-nodeid=\"1170\">K\u1ebft lu\u1eadn<\/h2>\n<p data-nodeid=\"1171\">Vi\u1ec7c t\u00edch h\u1ee3p c\u1ee7a Visual Paradigm gi\u1eefa kh\u1ea3 n\u0103ng t\u1ea1o s\u01a1 \u0111\u1ed3 h\u1ed7 tr\u1ee3 AI, n\u1ec1n t\u1ea3ng s\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng m\u00e3 c\u1ee7a VPasCode v\u00e0 t\u00e0i li\u1ec7u s\u1ed1ng \u0111\u1ed9ng c\u1ee7a OpenDocs t\u1ea1o ra m\u1ed9t quy tr\u00ecnh l\u00e0m vi\u1ec7c m\u1ea1nh m\u1ebd cho c\u00e1c \u0111\u1ed9i k\u1ef9 thu\u1eadt hi\u1ec7n \u0111\u1ea1i. B\u1eb1ng c\u00e1ch coi c\u00e1c s\u01a1 \u0111\u1ed3 l\u00e0 m\u00e3, b\u1ea1n s\u1ebd nh\u1eadn \u0111\u01b0\u1ee3c c\u00e1c l\u1ee3i \u00edch c\u1ee7a ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n, xu\u1ea5t b\u1ea3n t\u1ef1 \u0111\u1ed9ng v\u00e0 \u0111\u1ed3ng b\u1ed9 h\u00f3a li\u00ean t\u1ee5c v\u1edbi c\u00e1c h\u1ec7 th\u1ed1ng c\u1ee7a m\u00ecnh.<\/p>\n<p data-nodeid=\"1172\">B\u00e0i h\u1ecdc c\u1ed1t l\u00f5i l\u00e0 s\u1ef1 \u0111\u01a1n gi\u1ea3n: <strong data-nodeid=\"1333\">t\u1ea1o b\u1eb1ng AI, tinh ch\u1ec9nh b\u1eb1ng m\u00e3, xu\u1ea5t b\u1ea3n v\u1edbi s\u1ef1 t\u1ef1 tin<\/strong>Ph\u01b0\u01a1ng ph\u00e1p n\u00e0y lo\u1ea1i b\u1ecf s\u1ef1 c\u1ed3ng k\u1ec1nh c\u1ee7a vi\u1ec7c b\u1ea3o tr\u00ec s\u01a1 \u0111\u1ed3 th\u1ee7 c\u00f4ng v\u00e0 \u0111\u1ea3m b\u1ea3o r\u1eb1ng t\u00e0i li\u1ec7u c\u1ee7a b\u1ea1n ph\u00e1t tri\u1ec3n song song v\u1edbi c\u00e1c \u1ee9ng d\u1ee5ng c\u1ee7a m\u00ecnh. Cho d\u00f9 b\u1ea1n \u0111ang thi\u1ebft k\u1ebf ki\u1ebfn tr\u00fac vi d\u1ecbch v\u1ee5, t\u00e0i li\u1ec7u h\u00f3a lu\u1ed3ng x\u00e1c th\u1ef1c hay \u00e1nh x\u1ea1 c\u00e1c quy tr\u00ecnh kinh doanh, quy tr\u00ecnh l\u00e0m vi\u1ec7c n\u00e0y trao quy\u1ec1n cho c\u00e1c \u0111\u1ed9i giao ti\u1ebfp r\u00f5 r\u00e0ng, c\u1ed9ng t\u00e1c hi\u1ec7u qu\u1ea3 v\u00e0 duy tr\u00ec c\u00e1c h\u00ecnh \u1ea3nh h\u00f3a ch\u00ednh x\u00e1c, c\u1eadp nh\u1eadt v\u1ec1 h\u1ec7 th\u1ed1ng c\u1ee7a h\u1ecd.<\/p>\n<p class=\"\" data-nodeid=\"1173\">H\u00e3y b\u1eaft \u0111\u1ea7u th\u1eed nghi\u1ec7m v\u1edbi c\u00e1c s\u01a1 \u0111\u1ed3 PlantUML \u0111\u01b0\u1ee3c t\u1ea1o b\u1eb1ng AI ngay h\u00f4m nay v\u00e0 tr\u1ea3i nghi\u1ec7m s\u1ef1 chuy\u1ec3n \u0111\u1ed5i t\u1eeb t\u00e0i li\u1ec7u t\u0129nh, l\u1ed7i th\u1eddi sang c\u00e1c h\u01b0\u1edbng d\u1eabn ki\u1ebfn tr\u00fac \u0111\u1ed9ng v\u00e0 s\u1ed1ng \u0111\u1ed9ng.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Gi\u1edbi thi\u1ec7u Trong ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m hi\u1ec7n \u0111\u1ea1i, t\u00e0i li\u1ec7u th\u01b0\u1eddng tr\u1edf th\u00e0nh n\u00fat th\u1eaft c\u1ed5 chai. C\u00e1c c\u00f4ng c\u1ee5 v\u1ebd s\u01a1 \u0111\u1ed3 truy\u1ec1n th\u1ed1ng \u0111\u00f2i h\u1ecfi n\u1ed7 l\u1ef1c k\u00e9o th\u1ea3 th\u1ee7 c\u00f4ng, d\u1eabn \u0111\u1ebfn c\u00e1c h\u00ecnh \u1ea3nh t\u0129nh nhanh ch\u00f3ng tr\u1edf n\u00ean l\u1ed7i th\u1eddi khi h\u1ec7 th\u1ed1ng ph\u00e1t tri\u1ec3n. Trong khi \u0111\u00f3, c\u00e1c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[65,71,36,70],"tags":[],"class_list":["post-11739","post","type-post","status-publish","format-standard","hentry","category-ai","category-opendocs","category-uml","category-vpascode","loop-entry","clr"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm - Visual Paradigm Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm - Visual Paradigm Blog\" \/>\n<meta property=\"og:description\" content=\"Gi\u1edbi thi\u1ec7u Trong ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m hi\u1ec7n \u0111\u1ea1i, t\u00e0i li\u1ec7u th\u01b0\u1eddng tr\u1edf th\u00e0nh n\u00fat th\u1eaft c\u1ed5 chai. C\u00e1c c\u00f4ng c\u1ee5 v\u1ebd s\u01a1 \u0111\u1ed3 truy\u1ec1n th\u1ed1ng \u0111\u00f2i h\u1ecfi n\u1ed7 l\u1ef1c k\u00e9o th\u1ea3 th\u1ee7 c\u00f4ng, d\u1eabn \u0111\u1ebfn c\u00e1c h\u00ecnh \u1ea3nh t\u0129nh nhanh ch\u00f3ng tr\u1edf n\u00ean l\u1ed7i th\u1eddi khi h\u1ec7 th\u1ed1ng ph\u00e1t tri\u1ec3n. Trong khi \u0111\u00f3, c\u00e1c [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/\" \/>\n<meta property=\"og:site_name\" content=\"Visual Paradigm Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-07T02:50:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png\" \/>\n<meta name=\"author\" content=\"Admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi\" \/>\n\t<meta name=\"twitter:data1\" content=\"Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 ph\u00fat\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/\",\"url\":\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/\",\"name\":\"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm - Visual Paradigm Blog\",\"isPartOf\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png\",\"datePublished\":\"2026-09-07T02:50:23+00:00\",\"dateModified\":\"2026-09-07T02:50:23+00:00\",\"author\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/a649c442f11a53040710ddec750926c6\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#breadcrumb\"},\"inLanguage\":\"vi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#primaryimage\",\"url\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png\",\"contentUrl\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.visual-paradigm.com\/vn\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/#website\",\"url\":\"https:\/\/blog.visual-paradigm.com\/vn\/\",\"name\":\"Visual Paradigm Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.visual-paradigm.com\/vn\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"vi\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/a649c442f11a53040710ddec750926c6\",\"name\":\"Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g\",\"caption\":\"Admin\"},\"url\":\"https:\/\/blog.visual-paradigm.com\/vn\/author\/vpadminuser\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm - Visual Paradigm Blog","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:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/","og_locale":"vi_VN","og_type":"article","og_title":"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm - Visual Paradigm Blog","og_description":"Gi\u1edbi thi\u1ec7u Trong ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m hi\u1ec7n \u0111\u1ea1i, t\u00e0i li\u1ec7u th\u01b0\u1eddng tr\u1edf th\u00e0nh n\u00fat th\u1eaft c\u1ed5 chai. C\u00e1c c\u00f4ng c\u1ee5 v\u1ebd s\u01a1 \u0111\u1ed3 truy\u1ec1n th\u1ed1ng \u0111\u00f2i h\u1ecfi n\u1ed7 l\u1ef1c k\u00e9o th\u1ea3 th\u1ee7 c\u00f4ng, d\u1eabn \u0111\u1ebfn c\u00e1c h\u00ecnh \u1ea3nh t\u0129nh nhanh ch\u00f3ng tr\u1edf n\u00ean l\u1ed7i th\u1eddi khi h\u1ec7 th\u1ed1ng ph\u00e1t tri\u1ec3n. Trong khi \u0111\u00f3, c\u00e1c [&hellip;]","og_url":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/","og_site_name":"Visual Paradigm Blog","article_published_time":"2026-09-07T02:50:23+00:00","og_image":[{"url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png","type":"","width":"","height":""}],"author":"Admin","twitter_card":"summary_large_image","twitter_misc":{"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi":"Admin","\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"5 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/","url":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/","name":"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm - Visual Paradigm Blog","isPartOf":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#primaryimage"},"image":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png","datePublished":"2026-09-07T02:50:23+00:00","dateModified":"2026-09-07T02:50:23+00:00","author":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/a649c442f11a53040710ddec750926c6"},"breadcrumb":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/"]}]},{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#primaryimage","url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png","contentUrl":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/09\/img_6a9e237181606.png"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.visual-paradigm.com\/vn\/from-prompt-to-publication-mastering-ai-driven-uml-modeling-using-diagram-as-code-with-visual-paradigm\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.visual-paradigm.com\/vn\/"},{"@type":"ListItem","position":2,"name":"T\u1eeb Y\u00eau c\u1ea7u \u0111\u1ebfn Xu\u1ea5t b\u1ea3n: L\u00e0m ch\u1ee7 M\u00f4 h\u00ecnh h\u00f3a UML do AI d\u1eabn d\u1eaft b\u1eb1ng Ph\u01b0\u01a1ng ph\u00e1p S\u01a1 \u0111\u1ed3 d\u01b0\u1edbi d\u1ea1ng M\u00e3 v\u1edbi Visual Paradigm"}]},{"@type":"WebSite","@id":"https:\/\/blog.visual-paradigm.com\/vn\/#website","url":"https:\/\/blog.visual-paradigm.com\/vn\/","name":"Visual Paradigm Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.visual-paradigm.com\/vn\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi"},{"@type":"Person","@id":"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/a649c442f11a53040710ddec750926c6","name":"Admin","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g","caption":"Admin"},"url":"https:\/\/blog.visual-paradigm.com\/vn\/author\/vpadminuser\/"}]}},"modified_by":"Admin","_links":{"self":[{"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/posts\/11739","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/comments?post=11739"}],"version-history":[{"count":0,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/posts\/11739\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/media?parent=11739"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/categories?post=11739"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/tags?post=11739"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}