{"id":11711,"date":"2026-07-15T11:54:28","date_gmt":"2026-07-15T03:54:28","guid":{"rendered":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/"},"modified":"2026-07-26T18:31:18","modified_gmt":"2026-07-26T10:31:18","slug":"bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai","status":"publish","type":"post","link":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/","title":{"rendered":"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI"},"content":{"rendered":"<h1 data-nodeid=\"78278\">Gi\u1edbi Thi\u1ec7u<\/h1>\n<p data-nodeid=\"78279\">B\u1ea1n \u0111\u00e3 bao gi\u1edd b\u1eaft \u0111\u1ea7u m\u1ed9t d\u1ef1 \u00e1n ph\u1ea7n m\u1ec1m v\u1edbi m\u1ed9t \u00fd t\u01b0\u1edfng tuy\u1ec7t v\u1eddi, ch\u1ec9 \u0111\u1ec3 ph\u00e1t hi\u1ec7n r\u1eb1ng s\u00e1u th\u00e1ng sau, m\u00e3 ngu\u1ed3n c\u1ee7a b\u1ea1n ho\u00e0n to\u00e0n kh\u00e1c bi\u1ec7t so v\u1edbi t\u00e0i li\u1ec7u thi\u1ebft k\u1ebf ban \u0111\u1ea7u? \u0110\u00e2y l\u00e0 m\u1ed9t trong nh\u1eefng \u0111i\u1ec3m \u0111au ph\u1ed5 bi\u1ebfn nh\u1ea5t trong ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m. T\u00e0i li\u1ec7u tr\u1edf n\u00ean l\u1ed7i th\u1eddi, c\u00e1c nh\u00e0 ph\u00e1t tri\u1ec3n \u0111\u00e1nh m\u1ea5t \u0111\u1ecbnh h\u01b0\u1edbng v\u1ec1 m\u1ee5c ti\u00eau kinh doanh ban \u0111\u1ea7u, v\u00e0 s\u1ea3n ph\u1ea9m cu\u1ed1i c\u00f9ng kh\u00f4ng th\u1ec3 mang l\u1ea1i gi\u00e1 tr\u1ecb th\u1ef1c s\u1ef1.<\/p>\n<p data-nodeid=\"78280\">H\u00e3y c\u00f9ng kh\u00e1m ph\u00e1\u00a0<strong data-nodeid=\"78386\">Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng (UCDA)<\/strong>.<\/p>\n<p data-nodeid=\"78281\">UCDA l\u00e0 m\u1ed9t ph\u01b0\u01a1ng ph\u00e1p \u0111\u1ea3m b\u1ea3o thi\u1ebft k\u1ebf ph\u1ea7n m\u1ec1m c\u1ee7a b\u1ea1n lu\u00f4n \u0111\u01b0\u1ee3c g\u1eafn k\u1ebft ch\u1eb7t ch\u1ebd v\u1edbi gi\u00e1 tr\u1ecb kinh doanh ngay t\u1eeb ng\u00e0y \u0111\u1ea7u ti\u00ean. B\u1eb1ng c\u00e1ch c\u1ea5u tr\u00fac thi\u1ebft k\u1ebf c\u1ee7a b\u1ea1n th\u00e0nh b\u1ed1n c\u1ea5p \u0111\u1ed9 tu\u1ea7n t\u1ef1, b\u1ea1n s\u1ebd t\u1ea1o ra m\u1ed9t c\u1ea7u n\u1ed1i li\u1ec1n m\u1ea1ch gi\u1eefa c\u00e1c y\u00eau c\u1ea7u kinh doanh ban \u0111\u1ea7u, m\u00e3 ngu\u1ed3n th\u1ef1c thi \u0111\u01b0\u1ee3c v\u00e0 c\u00e1c h\u1ec7 th\u1ed1ng t\u1ef1 t\u00e0i li\u1ec7u h\u00f3a.<\/p>\n<p><img alt=\"Use Case Driven Architecture with Visual Paradigm AI\" class=\"alignnone\" decoding=\"async\" height=\"768\" loading=\"lazy\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.png\" width=\"1376\"\/><\/p>\n<p id=\"wMVhvPr\">Trong h\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n n\u00e0y, ch\u00fang ta s\u1ebd \u0111i qua b\u1ed1n c\u1ea5p \u0111\u1ed9 n\u00e0y b\u1eb1ng m\u1ed9t v\u00ed d\u1ee5 th\u1ef1c t\u1ebf: x\u00e2y d\u1ef1ng m\u1ed9t <strong data-nodeid=\"78397\">N\u1ec1n t\u1ea3ng \u0110\u1eb7t L\u1ecbch Kh\u00e1m Ch\u1eefa Tr\u1ef1c Tuy\u1ebfn<\/strong>. Ch\u00fang ta c\u0169ng s\u1ebd kh\u00e1m ph\u00e1 c\u00e1ch t\u1eadn d\u1ee5ng\u00a0<strong data-nodeid=\"78398\">Visual Paradigm v\u00e0 c\u00e1c t\u00ednh n\u0103ng AI c\u1ee7a n\u00f3<\/strong>\u00a0\u0111\u1ec3 t\u1ef1 \u0111\u1ed9ng h\u00f3a ph\u1ea7n vi\u1ec7c n\u1eb7ng nh\u1ecdc, gi\u00fap ki\u1ebfn tr\u00fac tr\u1edf n\u00ean d\u1ec5 ti\u1ebfp c\u1eadn ngay c\u1ea3 v\u1edbi ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u.<\/p>\n<hr data-nodeid=\"78283\"\/>\n<h1 data-nodeid=\"78284\">C\u00f4ng c\u1ee5 \u0110\u01b0\u1ee3c \u0110\u1ec1 Xu\u1ea5t: Visual Paradigm &amp; AI<\/h1>\n<p data-nodeid=\"78285\">Tr\u01b0\u1edbc khi b\u1eaft \u0111\u1ea7u, h\u00e3y thi\u1ebft l\u1eadp m\u00f4i tr\u01b0\u1eddng l\u00e0m vi\u1ec7c c\u1ee7a ch\u00fang ta. D\u00f9 b\u1ea1n c\u00f3 th\u1ec3 v\u1ebd s\u01a1 \u0111\u1ed3 tr\u00ean b\u1ea3ng tr\u1eafng, ki\u1ebfn tr\u00fac hi\u1ec7n \u0111\u1ea1i \u0111\u00f2i h\u1ecfi c\u00e1c c\u00f4ng c\u1ee5 \u0111\u1ed3ng b\u1ed9 v\u00e0 th\u00f4ng minh.<\/p>\n<p data-nodeid=\"78286\"><strong data-nodeid=\"78413\">Visual Paradigm (VP)<\/strong>\u00a0\u0111\u01b0\u1ee3c khuy\u1ebfn ngh\u1ecb cao cho quy tr\u00ecnh n\u00e0y. \u0110\u1eb7c \u0111i\u1ec3m n\u1ed5i b\u1eadt c\u1ee7a n\u00f3 l\u00e0\u00a0<strong data-nodeid=\"78414\">Visual Paradigm AI<\/strong>, ho\u1ea1t \u0111\u1ed9ng nh\u01b0 ng\u01b0\u1eddi \u0111\u1ed3ng h\u00e0nh th\u00f4ng minh c\u1ee7a b\u1ea1n. Thay v\u00ec k\u00e9o v\u00e0 th\u1ea3 h\u00ecnh d\u1ea1ng th\u1ee7 c\u00f4ng, b\u1ea1n c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean \u0111\u1ec3 t\u1ea1o s\u01a1 \u0111\u1ed3, \u0111\u1ea3m b\u1ea3o t\u00ednh nh\u1ea5t qu\u00e1n c\u1ee7a c\u00e1c th\u00e0nh ph\u1ea7n trong c\u00e1c g\u00f3c nh\u00ecn kh\u00e1c nhau, v\u00e0 \u00e1nh x\u1ea1 thi\u1ebft k\u1ebf tr\u1ef1c ti\u1ebfp sang m\u00e3 ngu\u1ed3n.<\/p>\n<p id=\"wbPhdBe\"><img alt=\"\" class=\"alignnone size-full wp-image-25307\" decoding=\"async\" height=\"596\" loading=\"lazy\" sizes=\"auto, (max-width: 1472px) 100vw, 1472px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a5703137ef5a.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a5703137ef5a.png 1472w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a5703137ef5a-300x121.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a5703137ef5a-1030x417.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a5703137ef5a-768x311.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a5703137ef5a-150x61.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a5703137ef5a-400x162.png 400w\" width=\"1472\"\/><\/p>\n<hr data-nodeid=\"78287\"\/>\n<h1 data-nodeid=\"78288\">C\u1ea5p \u0111\u1ed9 1: B\u1ed1i C\u1ea3nh (G\u00f3c Nh\u00ecn Kinh Doanh &amp; Ng\u01b0\u1eddi D\u00f9ng)<\/h1>\n<p data-nodeid=\"78289\">C\u1ea5p \u0111\u1ed9 B\u1ed1i c\u1ea3nh l\u00e0 g\u00f3c nh\u00ecn \u201ct\u1eeb \u0111\u1ed9 cao 30.000 feet\u201d c\u1ee7a b\u1ea1n. N\u00f3 x\u00e1c \u0111\u1ecbnh ranh gi\u1edbi c\u1ee7a h\u1ec7 th\u1ed1ng c\u1ee7a b\u1ea1n. N\u00f3 tr\u1ea3 l\u1eddi ba c\u00e2u h\u1ecfi then ch\u1ed1t:\u00a0<em data-nodeid=\"78426\">Ai \u0111ang s\u1eed d\u1ee5ng h\u1ec7 th\u1ed1ng n\u00e0y? H\u1ecd \u0111ang c\u1ed1 g\u1eafng \u0111\u1ea1t \u0111\u01b0\u1ee3c \u0111i\u1ec1u g\u00ec? Ch\u00fang ta c\u1ea7n giao ti\u1ebfp v\u1edbi nh\u1eefng h\u1ec7 th\u1ed1ng b\u00ean ngo\u00e0i n\u00e0o?<\/em><\/p>\n<h3 data-nodeid=\"78290\">Nh\u1eefng Kh\u00e1i Ni\u1ec7m Ch\u00ednh<\/h3>\n<ul data-nodeid=\"78291\">\n<li data-nodeid=\"78292\">\n<p data-nodeid=\"78293\"><strong data-nodeid=\"78432\">Ranh Gi\u1edbi H\u1ec7 Th\u1ed1ng:<\/strong>\u00a0M\u1ed9t \u0111\u01b0\u1eddng r\u00f5 r\u00e0ng t\u00e1ch bi\u1ec7t nh\u1eefng g\u00ec \u0111\u1ed9i c\u1ee7a b\u1ea1n x\u00e2y d\u1ef1ng (b\u00ean trong) kh\u1ecfi nh\u1eefng g\u00ec b\u1ea1n ph\u1ee5 thu\u1ed9c v\u00e0o (b\u00ean ngo\u00e0i).<\/p>\n<\/li>\n<li data-nodeid=\"78294\">\n<p data-nodeid=\"78295\"><strong data-nodeid=\"78437\">Ng\u01b0\u1eddi Tham Gia:<\/strong>\u00a0Ng\u01b0\u1eddi d\u00f9ng con ng\u01b0\u1eddi ho\u1eb7c c\u00e1c h\u1ec7 th\u1ed1ng b\u00ean ngo\u00e0i t\u01b0\u01a1ng t\u00e1c v\u1edbi \u1ee9ng d\u1ee5ng c\u1ee7a b\u1ea1n.<\/p>\n<\/li>\n<li data-nodeid=\"78296\">\n<p data-nodeid=\"78297\"><strong data-nodeid=\"78450\">Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng:<\/strong>\u00a0Nh\u1eefng m\u1ee5c ti\u00eau kinh doanh c\u1ee5 th\u1ec3 v\u00e0 c\u00f3 th\u1ec3 \u0111o l\u01b0\u1eddng (v\u00ed d\u1ee5: \u201c\u0110\u1eb7t L\u1ecbch H\u1eb9n\u201d, ch\u1ee9 kh\u00f4ng ch\u1ec9 \u201cNh\u1ea5n n\u00fat\u201d).<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"78298\">V\u00ed D\u1ee5 Th\u1ef1c T\u1ebf: B\u1ed1i C\u1ea3nh Kh\u00e1m Ch\u1eefa Tr\u1ef1c Tuy\u1ebfn<\/h3>\n<p data-nodeid=\"78299\">H\u00e3y c\u00f9ng v\u1ebd s\u01a1 \u0111\u1ed3 g\u00f3c nh\u00ecn c\u1ea5p cao c\u1ee7a n\u1ec1n t\u1ea3ng Kh\u00e1m Ch\u1eefa Tr\u1ef1c Tuy\u1ebfn c\u1ee7a ch\u00fang ta.<\/p>\n<h3 data-nodeid=\"78300\">Th\u1ef1c hi\u1ec7n PlantUML<\/h3>\n<p id=\"XJOEXRc\"><img alt=\"\" class=\"alignnone size-full wp-image-25308\" decoding=\"async\" height=\"869\" loading=\"lazy\" sizes=\"auto, (max-width: 1921px) 100vw, 1921px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b.png 1921w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b-300x136.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b-1030x466.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b-768x347.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b-1536x695.png 1536w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b-150x68.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57035251c8b-400x181.png 400w\" width=\"1921\"\/><\/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\/#plantuml:RP8_JyCm4CLtI_uEf-mTQ3fMKKkB14oH0XtOJidHMl6VoBu04UAxuwGXa0Wljj_zddNtv5rWzDmQBKMebMtGeu46onhFL72d2JoLZFQiIGefi6Jd8ScH5LbE04E4X_DKExf-7qhLS9mg1NlL4EppXz7OcMWiki1aOBkz-s3o5dMMJOuNvyp4lwcAtB-q55EJa3oHfWkXvWla6ldLUPF0fnGGLnken12XM-Tgs3UDKvRDpoJFXvi5bcC7yG4uE1jQpN5IPqTqlK0VurDmwbk40sezKkc2EYbwXp4zk5SXJjcDw4QAhtwKCKzOhR9hHtDXlHJItdHD-bUPtJSz4Pt3TPPwBwU3_2TSANPag_WblW40\" 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\/#plantuml:RP8nImCn68RtGFx3n-qTx7KifLeSN4Gu2-eMqt0vUadA9PKMSN1o4C7LiJg9E8lDu73z8_advdhdrJlD4FAzUH_utdmPQaCoCnSfHdgQo1d9Y80PeLCIiyWiKmOPeuR8E6KOOKIeKHa41yxUIGwIvyyo0A8zOH8cpSwGhoZepUlsSg8AiRwBJ9RC6EoV75NeKdWqMch31FJxXml3CadImQ0cBfGIjVygcJ3rhnkZkbS8ZfszbM3S-aN6S5uSllncts110hZ62FoQQqQ9zkRDerj_64YTlQSSk5j_bh76exsMyvGJ7zoeV2M1SWLqxkmJXIdFLw92kdyH0N52Vhonimz96QCYmXPnvgDLlMXdt-6o_TpZKG-Zco9nzV3GwGpARfj2jos41LGEPASqwbxXyEIsR0odaCEj_6i660sPdFWFz0q0\" \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=\"78301\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nskinparam packageStyle rectangle\r\n\r\nactor \"B\u1ec7nh nh\u00e2n\" as patient\r\nactor \"B\u00e1c s\u0129\" as doctor\r\nactor \"Stripe API\" as paymentSystem &lt;&lt;External&gt;&gt;\r\nactor \"Zoom API\" as videoSystem &lt;&lt;External&gt;&gt;\r\n\r\nrectangle \"N\u1ec1n t\u1ea3ng Y t\u1ebf t\u1eeb xa\" {\r\n    usecase \"\u0110\u1eb7t l\u1ecbch h\u1eb9n\" as UC1\r\n    usecase \"Thanh to\u00e1n cho cu\u1ed9c kh\u00e1m\" as UC2\r\n    usecase \"Tham gia cu\u1ed9c g\u1ecdi video\" as UC3\r\n    usecase \"Xem l\u1ecbch s\u1eed b\u1ec7nh nh\u00e2n\" as UC4\r\n}\r\n\r\npatient --&gt; UC1\r\npatient --&gt; UC2\r\npatient --&gt; UC3\r\n\r\ndoctor --&gt; UC3\r\ndoctor --&gt; UC4\r\n\r\nUC2 --&gt; paymentSystem\r\nUC3 --&gt; videoSystem\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:RP8nImCn68RtGFx3n-qTx7KifLeSN4Gu2-eMqt0vUadA9PKMSN1o4C7LiJg9E8lDu73z8_advdhdrJlD4FAzUH_utdmPQaCoCnSfHdgQo1d9Y80PeLCIiyWiKmOPeuR8E6KOOKIeKHa41yxUIGwIvyyo0A8zOH8cpSwGhoZepUlsSg8AiRwBJ9RC6EoV75NeKdWqMch31FJxXml3CadImQ0cBfGIjVygcJ3rhnkZkbS8ZfszbM3S-aN6S5uSllncts110hZ62FoQQqQ9zkRDerj_64YTlQSSk5j_bh76exsMyvGJ7zoeV2M1SWLqxkmJXIdFLw92kdyH0N52Vhonimz96QCYmXPnvgDLlMXdt-6o_TpZKG-Zco9nzV3GwGpARfj2jos41LGEPASqwbxXyEIsR0odaCEj_6i660sPdFWFz0q0\" \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\/#plantuml:RP8_JyCm4CLtI_uEf-mTQ3fMKKkB14oH0XtOJidHMl6VoBu04UAxuwGXa0Wljj_zddNtv5rWzDmQBKMebMtGeu46onhFL72d2JoLZFQiIGefi6Jd8ScH5LbE04E4X_DKExf-7qhLS9mg1NlL4EppXz7OcMWiki1aOBkz-s3o5dMMJOuNvyp4lwcAtB-q55EJa3oHfWkXvWla6ldLUPF0fnGGLnken12XM-Tgs3UDKvRDpoJFXvi5bcC7yG4uE1jQpN5IPqTqlK0VurDmwbk40sezKkc2EYbwXp4zk5SXJjcDw4QAhtwKCKzOhR9hHtDXlHJItdHD-bUPtJSz4Pt3TPPwBwU3_2TSANPag_WblW40\" 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<h3 data-nodeid=\"78302\">\ud83d\udee0\ufe0f T\u00edch h\u1ee3p AI c\u1ee7a Visual Paradigm<\/h3>\n<ol data-nodeid=\"78303\">\n<li data-nodeid=\"78304\">\n<p data-nodeid=\"78305\"><strong data-nodeid=\"78466\">T\u1ea1o b\u1edfi AI:<\/strong>\u00a0M\u1edf chatbot AI c\u1ee7a VP v\u00e0 nh\u1eadp y\u00eau c\u1ea7u:\u00a0<em data-nodeid=\"78467\">\u201cT\u1ea1o s\u01a1 \u0111\u1ed3 b\u1ed1i c\u1ea3nh h\u1ec7 th\u1ed1ng cho m\u1ed9t n\u1ec1n t\u1ea3ng Y t\u1ebf t\u1eeb xa bao g\u1ed3m b\u1ec7nh nh\u00e2n, b\u00e1c s\u0129, Stripe cho thanh to\u00e1n v\u00e0 Zoom cho cu\u1ed9c g\u1ecdi video.\u201d<\/em><\/p>\n<\/li>\n<li data-nodeid=\"78306\">\n<p data-nodeid=\"78307\"><strong data-nodeid=\"78476\">Kho l\u01b0u tr\u1eef m\u00f4 h\u00ecnh:<\/strong>\u00a0L\u01b0u c\u00e1c th\u00e0nh ph\u1ea7n n\u00e0y v\u00e0o Kho l\u01b0u tr\u1eef m\u00f4 h\u00ecnh c\u1ee7a VP. \u0110i\u1ec1u n\u00e0y \u0111\u1ea3m b\u1ea3o r\u1eb1ng khi b\u1ea1n s\u1eed d\u1ee5ng t\u00e1c nh\u00e2n &#8220;B\u1ec7nh nh\u00e2n&#8221; \u1edf c\u1ea5p \u0111\u1ed9 2, n\u00f3 s\u1ebd li\u00ean k\u1ebft tr\u1edf l\u1ea1i ch\u00ednh th\u1ef1c th\u1ec3 n\u00e0y, ng\u0103n ng\u1eeba s\u1ef1 kh\u00f4ng nh\u1ea5t qu\u00e1n v\u1ec1 t\u00ean g\u1ecdi.<\/p>\n<\/li>\n<\/ol>\n<hr data-nodeid=\"78308\"\/>\n<h1 data-nodeid=\"78309\">C\u1ea5p \u0111\u1ed9 2: Th\u1ef1c hi\u1ec7n (G\u00f3c nh\u00ecn t\u01b0\u01a1ng t\u00e1c)<\/h1>\n<p data-nodeid=\"78310\">B\u00e2y gi\u1edd ch\u00fang ta ph\u00f3ng to. Th\u1ef1c hi\u1ec7n m\u1edf r\u1ed9ng m\u1ed9t tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng c\u1ee5 th\u1ec3 \u0111\u1ec3 hi\u1ec3n th\u1ecb s\u1ef1 h\u1ee3p t\u00e1c t\u1eebng b\u01b0\u1edbc gi\u1eefa c\u00e1c th\u00e0nh ph\u1ea7n ph\u1ea7n m\u1ec1m. Ch\u00fang ta s\u1eed d\u1ee5ng m\u1eabu\u00a0<strong data-nodeid=\"78483\">Bi\u00ean gi\u1edbi-\u0110i\u1ec1u khi\u1ec3n-\u0110\u1ed1i t\u01b0\u1ee3ng (BCE)<\/strong>\u00a0m\u1eabu \u0111\u1ec3 gi\u1eef cho m\u1ecdi th\u1ee9 \u0111\u01b0\u1ee3c t\u1ed5 ch\u1ee9c:<\/p>\n<ul data-nodeid=\"78311\">\n<li data-nodeid=\"78312\">\n<p data-nodeid=\"78313\"><strong data-nodeid=\"78488\">Bi\u00ean gi\u1edbi:<\/strong>\u00a0X\u1eed l\u00fd t\u01b0\u01a1ng t\u00e1c ng\u01b0\u1eddi d\u00f9ng (giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng).<\/p>\n<\/li>\n<li data-nodeid=\"78314\">\n<p data-nodeid=\"78315\"><strong data-nodeid=\"78493\">\u0110i\u1ec1u khi\u1ec3n:<\/strong>\u00a0Ch\u1ee9a logic kinh doanh v\u00e0 c\u00e1c quy t\u1eafc.<\/p>\n<\/li>\n<li data-nodeid=\"78316\">\n<p data-nodeid=\"78317\"><strong data-nodeid=\"78498\">\u0110\u1ed1i t\u01b0\u1ee3ng:<\/strong>\u00a0Qu\u1ea3n l\u00fd d\u1eef li\u1ec7u.<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"78318\">V\u00ed d\u1ee5 th\u1ef1c t\u1ebf: \u0110\u1eb7t l\u1ecbch h\u1eb9n<\/h3>\n<p data-nodeid=\"78319\">H\u00e3y theo d\u00f5i tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng &#8220;\u0110\u1eb7t l\u1ecbch h\u1eb9n&#8221; \u0111\u1ec3 xem b\u1ec7nh nh\u00e2n t\u01b0\u01a1ng t\u00e1c v\u1edbi h\u1ec7 th\u1ed1ng nh\u01b0 th\u1ebf n\u00e0o.<\/p>\n<h3 data-nodeid=\"78320\">Th\u1ef1c hi\u1ec7n PlantUML<\/h3>\n<p id=\"hrZJtLW\"><img alt=\"\" class=\"alignnone size-full wp-image-25309\" decoding=\"async\" height=\"416\" loading=\"lazy\" sizes=\"auto, (max-width: 924px) 100vw, 924px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57037fc4de2.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57037fc4de2.png 924w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57037fc4de2-300x135.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57037fc4de2-768x346.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57037fc4de2-150x68.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a57037fc4de2-400x180.png 400w\" width=\"924\"\/><\/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\/#plantuml:ZP91JiCm44Ntbdo78GlKIlG2IA0spQOxfC819lP0hJfnP4-AUdic8LLZG2ghACcVz__uUvqO8_UDrmeDXmWlo8vQrgeEVMindg4eGpYwzWFUTWLWaeTM9hGSWuTYqtN1jTp826o_FtgAe-xwgfNyTdpEvHKorfXe55UbLbfDvh1w5XTuX3rvCg8COxHxU7KDZK7T2Pd695g9KlHNDvch9V7CQc57mCu-00jXxmClPvXvKArc8C5MfU3CWSnnSqBdiNPU5ha179QHmTNFM2vD44_m11nxMSPIDlQdVy8JPUiG2oRznnAlOpjxm-rowjQbpkDvgdtV6qCfBJBICaFb1pZq8QXBbzBY8Np-kYdlBZPaxueCD1IwfjRAVVm2\" 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\/#plantuml:ZLAzIWD14EuNzXt6AqH1No2Wn8jW0kcY3x3PMx9BDhFXTY-OKYmiWeMbXKYqiX1BCLSc-1xt9ix5I2ugQ7MmDz_VV5FtGQGX6rZEX0mkXRZ8hr03wla3SjPr6IOY7KDqOeI3n9H_ON5Jp5u3s2AVI1s1y73Muamw3Acp4175BStGx4K6VKtVIrmDWovcRxY4D3x7hKevKnXC8976-nHyaTz3KkGlO4krx2VoEEQCiwfHs3ya2r23XYxoQuJkV2h1BvvW6mAzt1de6O7BY6OaWbhwvOmW15mR8OAkS_sZuT0P30DojJCGiP0TiqSvCkoTQcTe4RXReQhcuAn2HjJ7CL5AhMJ_Q2IC5LrZAUS_ICk81Dx_Ri_u5P5LS00XpHHdYTg0_Uh1Yv6gnWhQaR3vbwPOurh97t9VFIJ63wqOnxHDWxrE9gNoddAtZTHDLSfMQ3OtM9P2D1lrrg3vUKLbcnE8sfMJe4kRFy9vsJZImpDkHHliPTLrXGdT-0S0\" \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=\"78321\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nactor B\u1ec7nh nh\u00e2n\r\nboundary \"Giao di\u1ec7n \u0111\u1eb7t l\u1ecbch\" as UI\r\ncontrol \"B\u1ed9 \u0111i\u1ec1u khi\u1ec3n l\u1ecbch h\u1eb9n\" as Controller\r\nentity \"C\u01a1 s\u1edf d\u1eef li\u1ec7u l\u1ecbch h\u1eb9n\" as DB\r\n\r\nB\u1ec7nh nh\u00e2n -&gt; UI : Ch\u1ecdn b\u00e1c s\u0129 &amp; th\u1eddi gian\r\nactivate UI\r\n\r\nUI -&gt; Controller : bookAppointment(maBacSi, khungThoiGian)\r\nactivate Controller\r\n\r\nController -&gt; DB : checkAvailability(maBacSi, khungThoiGian)\r\nactivate DB\r\nDB --&gt; Controller : isAvailable = true\r\ndeactivate DB\r\n\r\nController -&gt; DB : saveAppointment(thongTin)\r\nactivate DB\r\nDB --&gt; Controller : appointmentId\r\ndeactivate DB\r\n\r\nController --&gt; UI : displayBookingSuccess(maLichHen)\r\ndeactivate Controller\r\n\r\nUI --&gt; B\u1ec7nh nh\u00e2n : Hi\u1ec3n th\u1ecb \"L\u1ecbch h\u1eb9n \u0111\u00e3 x\u00e1c nh\u1eadn!\"\r\ndeactivate UI\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:ZLAzIWD14EuNzXt6AqH1No2Wn8jW0kcY3x3PMx9BDhFXTY-OKYmiWeMbXKYqiX1BCLSc-1xt9ix5I2ugQ7MmDz_VV5FtGQGX6rZEX0mkXRZ8hr03wla3SjPr6IOY7KDqOeI3n9H_ON5Jp5u3s2AVI1s1y73Muamw3Acp4175BStGx4K6VKtVIrmDWovcRxY4D3x7hKevKnXC8976-nHyaTz3KkGlO4krx2VoEEQCiwfHs3ya2r23XYxoQuJkV2h1BvvW6mAzt1de6O7BY6OaWbhwvOmW15mR8OAkS_sZuT0P30DojJCGiP0TiqSvCkoTQcTe4RXReQhcuAn2HjJ7CL5AhMJ_Q2IC5LrZAUS_ICk81Dx_Ri_u5P5LS00XpHHdYTg0_Uh1Yv6gnWhQaR3vbwPOurh97t9VFIJ63wqOnxHDWxrE9gNoddAtZTHDLSfMQ3OtM9P2D1lrrg3vUKLbcnE8sfMJe4kRFy9vsJZImpDkHHliPTLrXGdT-0S0\" \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\/#plantuml:ZP91JiCm44Ntbdo78GlKIlG2IA0spQOxfC819lP0hJfnP4-AUdic8LLZG2ghACcVz__uUvqO8_UDrmeDXmWlo8vQrgeEVMindg4eGpYwzWFUTWLWaeTM9hGSWuTYqtN1jTp826o_FtgAe-xwgfNyTdpEvHKorfXe55UbLbfDvh1w5XTuX3rvCg8COxHxU7KDZK7T2Pd695g9KlHNDvch9V7CQc57mCu-00jXxmClPvXvKArc8C5MfU3CWSnnSqBdiNPU5ha179QHmTNFM2vD44_m11nxMSPIDlQdVy8JPUiG2oRznnAlOpjxm-rowjQbpkDvgdtV6qCfBJBICaFb1pZq8QXBbzBY8Np-kYdlBZPaxueCD1IwfjRAVVm2\" 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<div class=\"chat-messages\">\n<div class=\"chat-container chat-container-bottom\" id=\"chat-message-container\">\n<div class=\"qwen-chat-message qwen-chat-message-assistant\">\n<div class=\"chat-response-message\" id=\"chat-response-message-0c624307-1d45-4a4b-9571-26aa1e3be221\">\n<div class=\"chat-response-message-right\">\n<div>\n<div>\n<div class=\"response-message-content t2t phase-answer\">\n<div class=\"custom-qwen-markdown\">\n<div class=\"qwen-markdown qwen-markdown-loose\">\n<h3 class=\"qwen-markdown-heading\"><span class=\"qwen-markdown-text\" data-spm-anchor-id=\"a2ty_o01.29997173.0.i39.676a55fbLQt0I9\"><br \/>\n\ud83d\udee0\ufe0f T\u00edch h\u1ee3p c\u00f4ng c\u1ee5: OpenDocs<\/span><\/h3>\n<ul class=\"qwen-markdown-list\" dir=\"auto\">\n<li><strong class=\"qwen-markdown-strong\"><span class=\"qwen-markdown-text\">T\u00e0i li\u1ec7u s\u1ed1ng:<\/span><\/strong><span class=\"qwen-markdown-text\"> T\u00edch h\u1ee3p <\/span><strong class=\"qwen-markdown-strong\"><span class=\"qwen-markdown-text\">OpenDocs<\/span><\/strong><span class=\"qwen-markdown-text\"> tr\u1ef1c ti\u1ebfp v\u00e0o pipeline CI\/CD c\u1ee7a b\u1ea1n \u0111\u1ec3 t\u1ef1 \u0111\u1ed9ng h\u00f3a vi\u1ec7c t\u1ea1o t\u00e0i li\u1ec7u. B\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng c\u00e1c ch\u00fa th\u00edch m\u00e3 chu\u1ea9n h\u00f3a (nh\u01b0 OpenAPI\/Swagger) trong m\u00e3 ngu\u1ed3n c\u1ee7a b\u1ea1n <\/span><code class=\"qwen-markdown-codespan\">AppointmentController<\/code><span class=\"qwen-markdown-text\">, OpenDocs qu\u00e9t m\u00e3 ngu\u1ed3n c\u1ee7a b\u1ea1n \u1edf m\u1ed7i l\u1ea7n commit. N\u00f3 t\u1ef1 \u0111\u1ed9ng t\u1ea1o v\u00e0 xu\u1ea5t b\u1ea3n c\u00e1c t\u00e0i li\u1ec7u m\u00f4 t\u1ea3 API v\u00e0 b\u1ea3n t\u00f3m t\u1eaft h\u1ec7 th\u1ed1ng m\u1edbi nh\u1ea5t. T\u00e0i li\u1ec7u c\u1ee7a b\u1ea1n tr\u1edf th\u00e0nh m\u1ed9t ph\u1ea3n \u00e1nh \u201cs\u1ed1ng \u0111\u1ed9ng\u201d th\u1ef1c s\u1ef1 c\u1ee7a m\u00e3 ngu\u1ed3n, \u0111\u1ea3m b\u1ea3o r\u1eb1ng c\u00e1c nh\u00e0 ph\u00e1t tri\u1ec3n v\u00e0 b\u00ean li\u00ean quan lu\u00f4n t\u01b0\u01a1ng t\u00e1c v\u1edbi th\u1ef1c t\u1ebf h\u1ec7 th\u1ed1ng hi\u1ec7n t\u1ea1i m\u00e0 kh\u00f4ng c\u1ea7n c\u1eadp nh\u1eadt s\u01a1 \u0111\u1ed3 th\u1ee7 c\u00f4ng.<\/span><\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"message-hoc-container\">\n<div class=\"response-message-footer\">\n<div class=\"qwen-chat-package-comp-new-action-control undefined\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<hr data-nodeid=\"78328\"\/>\n<h1 data-nodeid=\"78329\">M\u1ee9c 3: Thi\u1ebft k\u1ebf (G\u00f3c nh\u00ecn b\u1ea3n v\u1ebd m\u00e3 ngu\u1ed3n)<\/h1>\n<p data-nodeid=\"78330\">M\u1ee9c 3 chuy\u1ec3n \u0111\u1ed5i c\u00e1c b\u01b0\u1edbc h\u00e0nh vi t\u1eeb M\u1ee9c 2 th\u00e0nh b\u1ea3n v\u1ebd c\u1ea5u tr\u00fac t\u0129nh. \u0110\u00e2y ch\u00ednh l\u00e0 b\u1ea3n \u0111\u1ed3 m\u00e0 c\u00e1c nh\u00e0 ph\u00e1t tri\u1ec3n s\u1eed d\u1ee5ng \u0111\u1ec3 vi\u1ebft m\u00e3. N\u00f3 \u0111\u1ecbnh ngh\u0129a c\u00e1c l\u1edbp, giao di\u1ec7n v\u00e0 c\u00e1ch ch\u00fang k\u1ebft n\u1ed1i v\u1edbi nhau.<\/p>\n<h3 data-nodeid=\"78331\">V\u00ed d\u1ee5 th\u1ef1c t\u1ebf: B\u1ea3n v\u1ebd s\u01a1 \u0111\u1ed3 l\u1ecbch h\u1eb9n<\/h3>\n<p data-nodeid=\"78332\">D\u1ef1a tr\u00ean s\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1 c\u1ee7a ch\u00fang ta, ch\u00fang ta c\u1ea7n m\u1ed9t giao di\u1ec7n cho d\u1ecbch v\u1ee5, m\u1ed9t controller \u0111\u1ec3 x\u1eed l\u00fd c\u00e1c y\u00eau c\u1ea7u web, v\u00e0 m\u1ed9t th\u1ef1c th\u1ec3 \u0111\u1ec3 l\u01b0u tr\u1eef d\u1eef li\u1ec7u.<\/p>\n<h3 data-nodeid=\"78333\">Tri\u1ec3n khai PlantUML<\/h3>\n<p id=\"wtHSUXD\"><img alt=\"\" class=\"alignnone size-full wp-image-25310\" decoding=\"async\" height=\"292\" loading=\"lazy\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a570395d9a81.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a570395d9a81.png 1080w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a570395d9a81-300x81.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a570395d9a81-1030x278.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a570395d9a81-768x208.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a570395d9a81-150x41.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/img_6a570395d9a81-400x108.png 400w\" width=\"1080\"\/><\/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\/#plantuml:lP9D2i8m48NtWTmXIqNh0ReGHLsujLuWDgC6qqn8feAeTpSgjLKh28BPpNlpyp6JKI3fgImCPzeI-BNCGSp7pc4C2x2KWT_hg1qv4_7rn0fnr_0x2dD2FrUfoCXhk-aBqWLa1YaLKqdGJKKZVG6XDCJPcJFESYD3QBeJjEJH6F3Ll4J8DvQq3V07lCZaq0QOMT9q-CJsieWdi0Ku33hEEJoprVe_jbUZwKU_IdcTK-bEaewbxqR8jw1A0sePUUui3uiabQ4kkD6qNp59Xkt7QbdiO73wFldQk25pDWAhuZU-0000\" 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\/#plantuml:lP9D2i8m48NtWTmXIqNh0ReGHLsujLuWDgC6qqn8feAeTpSgjLKh28BPpNlpyp6JKI3fgImCPzeI-BNCGSp7pc4C2x2KWT_hg1qv4_7rn0fnr_0x2dD2FrUfoCXhk-aBqWLa1YaLKqdGJKKZVG6XDCJPcJFESYD3QBeJjEJH6F3Ll4J8DvQq3V07lCZaq0QOMT9q-CJsieWdi0Ku33hEEJoprVe_jbUZwKU_IdcTK-bEaewbxqR8jw1A0sePUUui3uiabQ4kkD6qNp59Xkt7QbdiO73wFldQk25pDWAhuZU-0000\" \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=\"78334\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\ninterface IAppointmentService {\r\n    + bookAppointment(doctorId: String, timeSlot: Date): AppointmentResult\r\n}\r\n\r\nclass AppointmentController {\r\n    - appointmentService: IAppointmentService\r\n    + bookAppointment(doctorId: String, timeSlot: Date): ResponseEntity\r\n}\r\n\r\nclass AppointmentService {\r\n    - appointmentRepository: IAppointmentRepository\r\n    + bookAppointment(doctorId: String, timeSlot: Date): AppointmentResult\r\n}\r\n\r\nclass Appointment {\r\n    - id: String\r\n    - doctorId: String\r\n    - patientId: String\r\n    - scheduledTime: Date\r\n    - status: String\r\n}\r\n\r\nAppointmentController --&gt; IAppointmentService\r\nAppointmentService ..|&gt; IAppointmentService\r\nAppointmentService --&gt; Appointment\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:lP9D2i8m48NtWTmXIqNh0ReGHLsujLuWDgC6qqn8feAeTpSgjLKh28BPpNlpyp6JKI3fgImCPzeI-BNCGSp7pc4C2x2KWT_hg1qv4_7rn0fnr_0x2dD2FrUfoCXhk-aBqWLa1YaLKqdGJKKZVG6XDCJPcJFESYD3QBeJjEJH6F3Ll4J8DvQq3V07lCZaq0QOMT9q-CJsieWdi0Ku33hEEJoprVe_jbUZwKU_IdcTK-bEaewbxqR8jw1A0sePUUui3uiabQ4kkD6qNp59Xkt7QbdiO73wFldQk25pDWAhuZU-0000\" \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\/#plantuml:lP9D2i8m48NtWTmXIqNh0ReGHLsujLuWDgC6qqn8feAeTpSgjLKh28BPpNlpyp6JKI3fgImCPzeI-BNCGSp7pc4C2x2KWT_hg1qv4_7rn0fnr_0x2dD2FrUfoCXhk-aBqWLa1YaLKqdGJKKZVG6XDCJPcJFESYD3QBeJjEJH6F3Ll4J8DvQq3V07lCZaq0QOMT9q-CJsieWdi0Ku33hEEJoprVe_jbUZwKU_IdcTK-bEaewbxqR8jw1A0sePUUui3uiabQ4kkD6qNp59Xkt7QbdiO73wFldQk25pDWAhuZU-0000\" 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<h3 data-nodeid=\"78335\">\ud83d\udee0\ufe0f T\u00edch h\u1ee3p AI c\u1ee7a Visual Paradigm<\/h3>\n<ol data-nodeid=\"78336\">\n<li data-nodeid=\"78337\">\n<p data-nodeid=\"78338\"><strong data-nodeid=\"78538\">T\u1ea1o l\u1edbp:<\/strong>\u00a0S\u1eed d\u1ee5ng AI c\u1ee7a Visual Paradigm \u0111\u1ec3 t\u1ea1o c\u1ea5u tr\u00fac l\u1edbp n\u00e0y tr\u1ef1c ti\u1ebfp t\u1eeb c\u00e1c \u0111\u01b0\u1eddng \u0111i tu\u1ea7n t\u1ef1 \u1edf M\u1ee9c 2. N\u00f3 t\u1ef1 \u0111\u1ed9ng nh\u1eadn di\u1ec7n c\u00e1c danh t\u1eeb (\u0110\u1ed1i t\u01b0\u1ee3ng) v\u00e0 \u0111\u1ed9ng t\u1eeb (Ph\u01b0\u01a1ng th\u1ee9c).<\/p>\n<\/li>\n<li data-nodeid=\"78339\">\n<p data-nodeid=\"78340\"><strong data-nodeid=\"78545\">\u00c1nh x\u1ea1 ORM:<\/strong>\u00a0S\u1eed d\u1ee5ng h\u1ec7 sinh th\u00e1i VP \u0111\u1ec3 \u00e1nh x\u1ea1 l\u1edbp\u00a0<code data-backticks=\"1\" data-nodeid=\"78543\">Appointment<\/code>\u00a0l\u1edbp tr\u1ef1c ti\u1ebfp sang s\u01a1 \u0111\u1ed3 c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7 (ERD) ho\u1eb7c t\u1ef1 \u0111\u1ed9ng t\u1ea1o c\u1ea5u h\u00ecnh Hibernate\/Entity Framework.<\/p>\n<\/li>\n<\/ol>\n<hr data-nodeid=\"78341\"\/>\n<h1 data-nodeid=\"78342\">M\u1ee9c 4: Th\u1ef1c thi &amp; T\u00e0i li\u1ec7u s\u1ed1ng (Th\u1ef1c t\u1ebf \u0111\u01b0\u1ee3c \u0111\u1ed3ng b\u1ed9)<\/h1>\n<p data-nodeid=\"78343\">\u0110\u00e2y ch\u00ednh l\u00e0 n\u01a1i ph\u00e9p m\u00e0u x\u1ea3y ra. M\u1ee9c 4 \u0111\u1ea3m b\u1ea3o ki\u1ebfn tr\u00fac c\u1ee7a b\u1ea1n kh\u00f4ng ch\u1ebft trong m\u1ed9t t\u1ec7p PDF. N\u00f3 bi\u1ebfn c\u00e1c s\u01a1 \u0111\u1ed3 t\u0129nh th\u00e0nh m\u00e3 ngu\u1ed3n th\u1ef1c thi \u0111\u01b0\u1ee3c v\u00e0 t\u00e0i li\u1ec7u t\u1ef1 c\u1eadp nh\u1eadt.<\/p>\n<h3 data-nodeid=\"78344\">C\u00e1c kh\u00e1i ni\u1ec7m ch\u00ednh<\/h3>\n<ul data-nodeid=\"78345\">\n<li data-nodeid=\"78346\">\n<p data-nodeid=\"78347\"><strong data-nodeid=\"78557\">K\u1ef9 thu\u1eadt ph\u00e1t tri\u1ec3n ti\u1ebfn:<\/strong>\u00a0T\u1ea1o c\u00e1c t\u1ec7p m\u00e3 ngu\u1ed3n khung tr\u1ef1c ti\u1ebfp t\u1eeb s\u01a1 \u0111\u1ed3 l\u1edbp c\u1ee7a b\u1ea1n.<\/p>\n<\/li>\n<li data-nodeid=\"78348\">\n<p data-nodeid=\"78349\"><strong data-nodeid=\"78562\">K\u1ef9 thu\u1eadt ph\u00e1t tri\u1ec3n ng\u01b0\u1ee3c:<\/strong>\u00a0Qu\u00e9t m\u00e3 ngu\u1ed3n \u0111\u00e3 \u0111\u01b0\u1ee3c ch\u1ec9nh s\u1eeda \u0111\u1ec3 t\u1ef1 \u0111\u1ed9ng c\u1eadp nh\u1eadt m\u00f4 h\u00ecnh ki\u1ebfn tr\u00fac c\u1ee7a b\u1ea1n.<\/p>\n<\/li>\n<li data-nodeid=\"78350\">\n<p data-nodeid=\"78351\"><strong data-nodeid=\"78571\">T\u00e0i li\u1ec7u s\u1ed1ng:<\/strong>\u00a0T\u00e0i li\u1ec7u ki\u1ebfn tr\u00fac \u0111\u01b0\u1ee3c t\u00e1i t\u1ea1o m\u1ed7i l\u1ea7n commit CI\/CD, \u0111\u1ea3m b\u1ea3o c\u00e1c s\u01a1 \u0111\u1ed3\u00a0<em data-nodeid=\"78572\">kh\u00f4ng bao gi\u1edd<\/em>\u00a0kh\u00f4ng c\u00f2n c\u1eadp nh\u1eadt.<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"78352\">Tri\u1ec3n khai m\u00e3 ngu\u1ed3n<\/h3>\n<p data-nodeid=\"78353\">S\u1eed d\u1ee5ng b\u1ea3n thi\u1ebft k\u1ebf c\u1ea5p 3, m\u1ed9t nh\u00e0 ph\u00e1t tri\u1ec3n vi\u1ebft m\u00e3 Java th\u1ef1c t\u1ebf. H\u00e3y ch\u00fa \u00fd c\u00e1ch n\u00f3 kh\u1edbp ho\u00e0n h\u1ea3o v\u1edbi s\u01a1 \u0111\u1ed3:<\/p>\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Java<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/#java:eNqNUc1OAjEQvm+y7zDhtCQGHgA1GDSGgwmBJyhLZRtKW7uzJMbwBJ6MR0+GGNSTXpeDhyW8x76JLQt2BWJsstPNTGfm+2l2aYwtKVBLzqn2vWaX3iQmd0WUYmIYVOpEMfMpyQSOqcC4UvU9lfQ5CyHkJI7hzBXdJLjzPTCniEqzCUEK10wQDu1SR4\/qCQspkL1Uw\/eK5nodWlH2KiCUIkadhCg1DPLFJwHU2buAfp7OBGDE8vQLYWQihPliTiCMslQMAckGRYH6IN7gf6CqW172mI1xbf8NnBxmY1umW1LNjiyL3JdyZIUtwTTOKEOYXghkeHtcgmcqCcdTsE2ldOCQrTdsnOwQTcbQQ202wUBa9dqDI\/jr8bn1CtmY9rjEX5Tdn3HlkhFpNJbA88WTspbchxFM8sULiGj1AcuHbGaCSYsIxDBavlnHpIERr57XhUfAJE\/nxjxjp5u9xxV0cR1StrYrg+P4Q6HhZmuKiRY76tbkKChWVJ1R02\/zchqs\" \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 Java in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-java\" data-nodeid=\"78354\"><code data-language=\"java\" class=\"language-java\">@RestController\r\n@RequestMapping(\"\/api\/appointments\")\r\npublic class AppointmentController {\r\n    \r\n    private final IAppointmentService appointmentService;\r\n\r\n    \/\/ Ch\u00e8n constructor d\u1ef1a tr\u00ean b\u1ea3n thi\u1ebft k\u1ebf c\u1ee7a ch\u00fang ta\r\n    public AppointmentController(IAppointmentService appointmentService) {\r\n        this.appointmentService = appointmentService;\r\n    }\r\n\r\n    @PostMapping(\"\/book\")\r\n    public ResponseEntity&lt;AppointmentResult&gt; bookAppointment(\r\n            @RequestParam String doctorId, \r\n            @RequestParam Date timeSlot) {\r\n        \r\n        \/\/ Giao cho l\u1edbp d\u1ecbch v\u1ee5 nh\u01b0 \u0111\u00e3 \u0111\u1ecbnh ngh\u0129a trong s\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1\r\n        AppointmentResult result = appointmentService.bookAppointment(doctorId, timeSlot);\r\n        return ResponseEntity.ok(result);\r\n    }\r\n}\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#java:eNqNUc1OAjEQvm+y7zDhtCQGHgA1GDSGgwmBJyhLZRtKW7uzJMbwBJ6MR0+GGNSTXpeDhyW8x76JLQt2BWJsstPNTGfm+2l2aYwtKVBLzqn2vWaX3iQmd0WUYmIYVOpEMfMpyQSOqcC4UvU9lfQ5CyHkJI7hzBXdJLjzPTCniEqzCUEK10wQDu1SR4\/qCQspkL1Uw\/eK5nodWlH2KiCUIkadhCg1DPLFJwHU2buAfp7OBGDE8vQLYWQihPliTiCMslQMAckGRYH6IN7gf6CqW172mI1xbf8NnBxmY1umW1LNjiyL3JdyZIUtwTTOKEOYXghkeHtcgmcqCcdTsE2ldOCQrTdsnOwQTcbQQ202wUBa9dqDI\/jr8bn1CtmY9rjEX5Tdn3HlkhFpNJbA88WTspbchxFM8sULiGj1AcuHbGaCSYsIxDBavlnHpIERr57XhUfAJE\/nxjxjp5u9xxV0cR1StrYrg+P4Q6HhZmuKiRY76tbkKChWVJ1R02\/zchqs\" \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 Java in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<h3 class=\"qwen-markdown-heading\"><span class=\"qwen-markdown-text\" data-spm-anchor-id=\"a2ty_o01.29997173.0.i39.676a55fbLQt0I9\">\ud83d\udee0\ufe0f T\u00edch h\u1ee3p c\u00f4ng c\u1ee5: OpenDocs<\/span><\/h3>\n<ul class=\"qwen-markdown-list\" dir=\"auto\">\n<li data-spm-anchor-id=\"a2ty_o01.29997173.0.i42.676a55fbLQt0I9\"><strong class=\"qwen-markdown-strong\"><span class=\"qwen-markdown-text\">T\u00e0i li\u1ec7u s\u1ed1ng:<\/span><\/strong><span class=\"qwen-markdown-text\"> T\u00edch h\u1ee3p <\/span><strong class=\"qwen-markdown-strong\"><span class=\"qwen-markdown-text\">OpenDocs<\/span><\/strong><span class=\"qwen-markdown-text\"> tr\u1ef1c ti\u1ebfp v\u00e0o pipeline CI\/CD c\u1ee7a b\u1ea1n \u0111\u1ec3 t\u1ef1 \u0111\u1ed9ng h\u00f3a vi\u1ec7c t\u1ea1o t\u00e0i li\u1ec7u. B\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng c\u00e1c ch\u00fa th\u00edch m\u00e3 chu\u1ea9n h\u00f3a (nh\u01b0 OpenAPI\/Swagger) trong <\/span><code class=\"qwen-markdown-codespan\">AppointmentController<\/code><span class=\"qwen-markdown-text\" data-spm-anchor-id=\"a2ty_o01.29997173.0.i40.676a55fbLQt0I9\">, OpenDocs qu\u00e9t c\u01a1 s\u1edf m\u00e3 ngu\u1ed3n c\u1ee7a b\u1ea1n \u1edf m\u1ed7i l\u1ea7n ghi ch\u00fa. N\u00f3 t\u1ef1 \u0111\u1ed9ng t\u1ea1o v\u00e0 xu\u1ea5t b\u1ea3n c\u00e1c t\u00e0i li\u1ec7u m\u00f4 t\u1ea3 API v\u00e0 t\u00f3m t\u1eaft h\u1ec7 th\u1ed1ng c\u1eadp nh\u1eadt nh\u1ea5t. T\u00e0i li\u1ec7u c\u1ee7a b\u1ea1n tr\u1edf th\u00e0nh m\u1ed9t ph\u1ea3n \u00e1nh \u201cs\u1ed1ng \u0111\u1ed9ng\u201d th\u1ef1c s\u1ef1 c\u1ee7a c\u01a1 s\u1edf m\u00e3 ngu\u1ed3n, \u0111\u1ea3m b\u1ea3o r\u1eb1ng c\u00e1c nh\u00e0 ph\u00e1t tri\u1ec3n v\u00e0 b\u00ean li\u00ean quan lu\u00f4n t\u01b0\u01a1ng t\u00e1c v\u1edbi th\u1ef1c t\u1ebf h\u1ec7 th\u1ed1ng hi\u1ec7n t\u1ea1i m\u00e0 kh\u00f4ng c\u1ea7n c\u1eadp nh\u1eadt s\u01a1 \u0111\u1ed3 th\u1ee7 c\u00f4ng.<\/span><\/li>\n<\/ul>\n<hr data-nodeid=\"78359\"\/>\n<h1 data-nodeid=\"78360\">K\u1ebft lu\u1eadn<\/h1>\n<p data-nodeid=\"78361\">X\u00e2y d\u1ef1ng ph\u1ea7n m\u1ec1m l\u00e0 \u0111i\u1ec1u ph\u1ee9c t\u1ea1p, nh\u01b0ng qu\u1ea3n l\u00fd s\u1ef1 ph\u1ee9c t\u1ea1p \u0111\u00f3 kh\u00f4ng nh\u1ea5t thi\u1ebft ph\u1ea3i kh\u00f3. B\u1eb1ng c\u00e1ch \u00e1p d\u1ee5ng m\u1ed9t <strong data-nodeid=\"78597\">Ki\u1ebfn tr\u00fac d\u1eabn d\u1eaft b\u1edfi tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng<\/strong>, b\u1ea1n \u0111\u1ea3m b\u1ea3o r\u1eb1ng m\u1ed7i d\u00f2ng m\u00e3 b\u1ea1n vi\u1ebft \u0111\u1ec1u c\u00f3 th\u1ec3 truy ng\u01b0\u1ee3c l\u1ea1i \u0111\u1ebfn m\u1ed9t m\u1ee5c ti\u00eau kinh doanh c\u1ee5 th\u1ec3 v\u00e0 c\u00f3 gi\u00e1 tr\u1ecb.<\/p>\n<p data-nodeid=\"78362\">Nh\u01b0 ch\u00fang ta \u0111\u00e3 th\u1ea5y, h\u00e0nh tr\u00ecnh t\u1eeb m\u1ed9t \u00fd t\u01b0\u1edfng kinh doanh c\u1ea5p cao \u0111\u1ebfn m\u00e3 ngu\u1ed3n th\u1ef1c thi s\u1ebd tr\u01a1n tru h\u01a1n nhi\u1ec1u khi \u0111\u01b0\u1ee3c chia nh\u1ecf th\u00e0nh b\u1ed1n c\u1ea5p \u0111\u1ed9 ri\u00eang bi\u1ec7t:<\/p>\n<ol data-nodeid=\"78363\">\n<li data-nodeid=\"78364\">\n<p data-nodeid=\"78365\"><strong data-nodeid=\"78605\">B\u1ed1i c\u1ea3nh:<\/strong>\u00a0X\u00e1c \u0111\u1ecbnh ranh gi\u1edbi v\u00e0 c\u00e1c t\u00e1c nh\u00e2n.<\/p>\n<\/li>\n<li data-nodeid=\"78366\">\n<p data-nodeid=\"78367\"><strong data-nodeid=\"78610\">Th\u1ef1c hi\u1ec7n:<\/strong>\u00a0B\u1ea3n \u0111\u1ed3 h\u00f3a c\u00e1c t\u01b0\u01a1ng t\u00e1c t\u1eebng b\u01b0\u1edbc.<\/p>\n<\/li>\n<li data-nodeid=\"78368\">\n<p data-nodeid=\"78369\"><strong data-nodeid=\"78615\">Thi\u1ebft k\u1ebf:<\/strong>\u00a0T\u1ea1o b\u1ea3n thi\u1ebft k\u1ebf m\u00e3 ngu\u1ed3n c\u1ea5u tr\u00fac.<\/p>\n<\/li>\n<li data-nodeid=\"78370\">\n<p data-nodeid=\"78371\"><strong data-nodeid=\"78620\">Th\u1ef1c thi:<\/strong>\u00a0Gi\u1eef cho m\u00e3 ngu\u1ed3n v\u00e0 t\u00e0i li\u1ec7u lu\u00f4n \u0111\u1ed3ng b\u1ed9 ho\u00e0n h\u1ea3o.<\/p>\n<\/li>\n<\/ol>\n<p data-nodeid=\"78372\">B\u1eb1ng c\u00e1ch t\u1eadn d\u1ee5ng c\u00e1c c\u00f4ng c\u1ee5 hi\u1ec7n \u0111\u1ea1i nh\u01b0 <strong data-nodeid=\"78626\">Visual Paradigm v\u00e0 c\u00e1c t\u00ednh n\u0103ng AI c\u1ee7a n\u00f3<\/strong>, c\u1ea3 ng\u01b0\u1eddi m\u1edbi v\u00e0 ng\u01b0\u1eddi c\u00f3 kinh nghi\u1ec7m \u0111\u1ec1u c\u00f3 th\u1ec3 t\u1ef1 \u0111\u1ed9ng h\u00f3a c\u00e1c ph\u1ea7n t\u1ed1n th\u1eddi gian trong m\u00f4 h\u00ecnh h\u00f3a. B\u1ea1n kh\u00f4ng c\u00f2n ph\u1ea3i l\u1ef1a ch\u1ecdn gi\u1eefa vi\u1ec7c di chuy\u1ec3n nhanh v\u00e0 duy tr\u00ec t\u00e0i li\u1ec7u t\u1ed1t\u2014b\u1ea1n c\u00f3 th\u1ec3 l\u00e0m c\u1ea3 hai.<\/p>\n<p class=\"\" data-nodeid=\"78373\"><strong data-nodeid=\"78632\">B\u01b0\u1edbc ti\u1ebfp theo c\u1ee7a b\u1ea1n:<\/strong>\u00a0T\u1ea3i xu\u1ed1ng Visual Paradigm, m\u1edf tr\u1ee3 l\u00fd AI, v\u00e0 th\u1eed t\u1ea1o s\u01a1 \u0111\u1ed3 B\u1ed1i c\u1ea3nh cho m\u1ed9t d\u1ef1 \u00e1n b\u1ea1n \u0111ang l\u00e0m vi\u1ec7c. H\u00e3y xem c\u00e1ch nhanh ch\u00f3ng t\u1ea7m nh\u00ecn ki\u1ebfn tr\u00fac c\u1ee7a b\u1ea1n tr\u1edf th\u00e0nh hi\u1ec7n th\u1ef1c!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Gi\u1edbi Thi\u1ec7u B\u1ea1n \u0111\u00e3 bao gi\u1edd b\u1eaft \u0111\u1ea7u m\u1ed9t d\u1ef1 \u00e1n ph\u1ea7n m\u1ec1m v\u1edbi m\u1ed9t \u00fd t\u01b0\u1edfng tuy\u1ec7t v\u1eddi, ch\u1ec9 \u0111\u1ec3 ph\u00e1t hi\u1ec7n r\u1eb1ng s\u00e1u th\u00e1ng sau, m\u00e3 ngu\u1ed3n c\u1ee7a b\u1ea1n ho\u00e0n to\u00e0n kh\u00e1c bi\u1ec7t so v\u1edbi t\u00e0i li\u1ec7u thi\u1ebft k\u1ebf ban \u0111\u1ea7u? \u0110\u00e2y l\u00e0 m\u1ed9t trong nh\u1eefng \u0111i\u1ec3m \u0111au ph\u1ed5 bi\u1ebfn nh\u1ea5t trong ph\u00e1t [&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":[1],"tags":[],"class_list":["post-11711","post","type-post","status-publish","format-standard","hentry","category-uncategorized","loop-entry","clr"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI - 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\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI - Visual Paradigm Blog\" \/>\n<meta property=\"og:description\" content=\"Gi\u1edbi Thi\u1ec7u B\u1ea1n \u0111\u00e3 bao gi\u1edd b\u1eaft \u0111\u1ea7u m\u1ed9t d\u1ef1 \u00e1n ph\u1ea7n m\u1ec1m v\u1edbi m\u1ed9t \u00fd t\u01b0\u1edfng tuy\u1ec7t v\u1eddi, ch\u1ec9 \u0111\u1ec3 ph\u00e1t hi\u1ec7n r\u1eb1ng s\u00e1u th\u00e1ng sau, m\u00e3 ngu\u1ed3n c\u1ee7a b\u1ea1n ho\u00e0n to\u00e0n kh\u00e1c bi\u1ec7t so v\u1edbi t\u00e0i li\u1ec7u thi\u1ebft k\u1ebf ban \u0111\u1ea7u? \u0110\u00e2y l\u00e0 m\u1ed9t trong nh\u1eefng \u0111i\u1ec3m \u0111au ph\u1ed5 bi\u1ebfn nh\u1ea5t trong ph\u00e1t [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/\" \/>\n<meta property=\"og:site_name\" content=\"Visual Paradigm Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-15T03:54:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-26T10:31:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.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=\"6 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\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/\",\"url\":\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/\",\"name\":\"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI - Visual Paradigm Blog\",\"isPartOf\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.png\",\"datePublished\":\"2026-07-15T03:54:28+00:00\",\"dateModified\":\"2026-07-26T10:31:18+00:00\",\"author\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/a649c442f11a53040710ddec750926c6\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#breadcrumb\"},\"inLanguage\":\"vi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#primaryimage\",\"url\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.png\",\"contentUrl\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.visual-paradigm.com\/vn\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI\"}]},{\"@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":"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI - 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\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/","og_locale":"vi_VN","og_type":"article","og_title":"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI - Visual Paradigm Blog","og_description":"Gi\u1edbi Thi\u1ec7u B\u1ea1n \u0111\u00e3 bao gi\u1edd b\u1eaft \u0111\u1ea7u m\u1ed9t d\u1ef1 \u00e1n ph\u1ea7n m\u1ec1m v\u1edbi m\u1ed9t \u00fd t\u01b0\u1edfng tuy\u1ec7t v\u1eddi, ch\u1ec9 \u0111\u1ec3 ph\u00e1t hi\u1ec7n r\u1eb1ng s\u00e1u th\u00e1ng sau, m\u00e3 ngu\u1ed3n c\u1ee7a b\u1ea1n ho\u00e0n to\u00e0n kh\u00e1c bi\u1ec7t so v\u1edbi t\u00e0i li\u1ec7u thi\u1ebft k\u1ebf ban \u0111\u1ea7u? \u0110\u00e2y l\u00e0 m\u1ed9t trong nh\u1eefng \u0111i\u1ec3m \u0111au ph\u1ed5 bi\u1ebfn nh\u1ea5t trong ph\u00e1t [&hellip;]","og_url":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/","og_site_name":"Visual Paradigm Blog","article_published_time":"2026-07-15T03:54:28+00:00","article_modified_time":"2026-07-26T10:31:18+00:00","og_image":[{"url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.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":"6 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/","url":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/","name":"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI - Visual Paradigm Blog","isPartOf":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#primaryimage"},"image":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.png","datePublished":"2026-07-15T03:54:28+00:00","dateModified":"2026-07-26T10:31:18+00:00","author":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/#\/schema\/person\/a649c442f11a53040710ddec750926c6"},"breadcrumb":{"@id":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/"]}]},{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#primaryimage","url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.png","contentUrl":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/07\/bananaagsiCmdnbG9iYWw6OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAwZWI6MTpkZTI4NzI5ODEyOTA5YzA1OjAwMDA1NWNmZWM3MDAyNmQ6MDAwMDAyZWIyODIwMzM2ODowMDA2NTY5ZTJhNzQ3ZDhmEAIYASIJaW1hZ2UvcG5n.png"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.visual-paradigm.com\/vn\/bridging-the-gap-a-beginners-guide-to-use-case-driven-architecture-with-visual-paradigm-ai\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.visual-paradigm.com\/vn\/"},{"@type":"ListItem","position":2,"name":"B\u1eafc C\u1ea7u N\u1ed1i Kho\u1ea3ng C\u00e1ch: H\u01b0\u1edbng D\u1eabn Cho Ng\u01b0\u1eddi M\u1edbi V\u1ec1 Ki\u1ebfn Tr\u00fac D\u1eabn D\u1eaft B\u1eb1ng Tr\u01b0\u1eddng H\u1ee3p S\u1eed D\u1ee5ng V\u1edbi Visual Paradigm AI"}]},{"@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\/11711","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=11711"}],"version-history":[{"count":0,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/posts\/11711\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/media?parent=11711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/categories?post=11711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/vn\/wp-json\/wp\/v2\/tags?post=11711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}