{"id":12102,"date":"2026-07-24T16:53:57","date_gmt":"2026-07-24T08:53:57","guid":{"rendered":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/"},"modified":"2026-07-24T16:53:57","modified_gmt":"2026-07-24T08:53:57","slug":"ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml","status":"publish","type":"post","link":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/","title":{"rendered":"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML"},"content":{"rendered":"<p data-nodeid=\"53512\">Ch\u00e0o m\u1eebng b\u1ea1n \u0111\u1ebfn v\u1edbi h\u01b0\u1edbng d\u1eabn ch\u00ednh x\u00e1c v\u1ec1 vi\u1ec7c s\u1eed d\u1ee5ng<strong data-nodeid=\"53674\">Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI c\u1ee7a Visual Paradigm<\/strong>. C\u00f4ng c\u1ee5 n\u00e0y c\u00e1ch m\u1ea1ng h\u00f3a m\u00f4 h\u00ecnh h\u00f3a tr\u1ef1c quan b\u1eb1ng c\u00e1ch cho ph\u00e9p b\u1ea1n t\u1ea1o, tinh ch\u1ec9nh v\u00e0 ph\u00e2n t\u00edch c\u00e1c s\u01a1 \u0111\u1ed3 chuy\u00ean nghi\u1ec7p UML, BPMN, ArchiMate v\u00e0 C4 ho\u00e0n to\u00e0n th\u00f4ng qua cu\u1ed9c tr\u00f2 chuy\u1ec7n b\u1eb1ng ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean. D\u00f9 b\u1ea1n l\u00e0 ki\u1ebfn tr\u00fac s\u01b0 ph\u1ea7n m\u1ec1m, nh\u00e0 ph\u00e2n t\u00edch kinh doanh hay sinh vi\u00ean, tr\u1ee3 l\u00fd AI n\u00e0y s\u1ebd lo\u1ea1i b\u1ecf c\u00f4ng vi\u1ec7c t\u1ebb nh\u1ea1t \u201ck\u00e9o v\u00e0 th\u1ea3\u201d trong vi\u1ec7c v\u1ebd s\u01a1 \u0111\u1ed3 th\u1ee7 c\u00f4ng.<\/p>\n<p><img alt=\"Meet your AI modeling assistant! Introducing Visual Paradigm Chatbot\" data-nodeid=\"53709\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg\"\/><\/p>\n<h2 data-nodeid=\"53513\">1. Gi\u1edbi thi\u1ec7u v\u1ec1 c\u01a1 b\u1ea3n tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI<\/h2>\n<p data-nodeid=\"53514\">Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI c\u1ee7a Visual Paradigm kh\u00f4ng ch\u1ec9 l\u00e0 c\u00f4ng c\u1ee5 sinh v\u0103n b\u1ea3n; \u0111\u00f3 l\u00e0 m\u1ed9t b\u1ed9 \u0111\u1ed9ng c\u01a1 chuy\u00ean bi\u1ec7t \u0111\u01b0\u1ee3c hu\u1ea5n luy\u1ec7n tr\u00ean h\u00e0ng tri\u1ec7u t\u00e0i li\u1ec7u m\u00f4 h\u00ecnh h\u00f3a tr\u1ef1c quan \u0111\u00e3 \u0111\u01b0\u1ee3c x\u00e1c th\u1ef1c v\u00e0 c\u00e1c ti\u00eau chu\u1ea9n ng\u00e0nh (UML, SysML, ArchiMate). Kh\u00e1c v\u1edbi c\u00e1c c\u00f4ng c\u1ee5 AI th\u00f4ng th\u01b0\u1eddng c\u00f3 th\u1ec3 t\u1ea1o ra c\u00e1c s\u01a1 \u0111\u1ed3 kh\u00f4ng h\u1ee3p l\u1ec7 v\u1ec1 m\u1eb7t c\u1ea5u tr\u00fac, tr\u1ee3 l\u00fd n\u00e0y tu\u00e2n th\u1ee7 nghi\u00eam ng\u1eb7t c\u00e1c quy t\u1eafc m\u00f4 h\u00ecnh h\u00f3a, \u0111\u1ea3m b\u1ea3o \u0111\u1ea7u ra c\u1ee7a b\u1ea1n s\u1eb5n s\u00e0ng cho s\u1eed d\u1ee5ng chuy\u00ean nghi\u1ec7p.<\/p>\n<h3 data-nodeid=\"53515\">Nh\u1eefng kh\u00e1i ni\u1ec7m ch\u00ednh<\/h3>\n<ul data-nodeid=\"53516\">\n<li data-nodeid=\"53517\">\n<p data-nodeid=\"53518\"><strong data-nodeid=\"53682\">T\u1ea1o s\u01a1 \u0111\u1ed3 t\u1ee9c th\u00ec<\/strong>: Chuy\u1ec3n \u0111\u1ed5i m\u00f4 t\u1ea3 v\u0103n b\u1ea3n th\u01b0\u1eddng th\u00e0nh c\u00e1c s\u01a1 \u0111\u1ed3 c\u00f3 c\u1ea5u tr\u00fac \u0111\u1ea7y \u0111\u1ee7, c\u00f3 th\u1ec3 ch\u1ec9nh s\u1eeda trong v\u00e0i gi\u00e2y.<\/p>\n<\/li>\n<li data-nodeid=\"53519\">\n<p data-nodeid=\"53520\"><strong data-nodeid=\"53694\">Tinh ch\u1ec9nh qua cu\u1ed9c tr\u00f2 chuy\u1ec7n<\/strong>: Xem s\u01a1 \u0111\u1ed3 c\u1ee7a b\u1ea1n nh\u01b0 t\u00e0i li\u1ec7u s\u1ed1ng \u0111\u1ed9ng. B\u1ea1n c\u00f3 th\u1ec3 ph\u00e1t tri\u1ec3n ch\u00fang th\u00f4ng qua c\u00e1c l\u1ec7nh tr\u00f2 chuy\u1ec7n nh\u01b0 \u201cTh\u00eam m\u1ed9t v\u00f2ng l\u1eb7p th\u1eed l\u1ea1i\u201d ho\u1eb7c \u201cThay \u0111\u1ed5i m\u1ed1i quan h\u1ec7 th\u00e0nh k\u1ebft h\u1ee3p.\u201d<\/p>\n<\/li>\n<li data-nodeid=\"53521\">\n<p data-nodeid=\"53522\"><strong data-nodeid=\"53699\">Ph\u00e2n t\u00edch th\u00f4ng minh<\/strong>: Y\u00eau c\u1ea7u AI x\u00e1c \u0111\u1ecbnh c\u00e1c khi\u1ebfm khuy\u1ebft thi\u1ebft k\u1ebf, c\u00e1c \u0111i\u1ec3m l\u1ed7i duy nh\u1ea5t, ho\u1eb7c gi\u1ea3i th\u00edch c\u00e1c m\u1ed1i quan h\u1ec7 ph\u1ee9c t\u1ea1p trong m\u00f4 h\u00ecnh c\u1ee7a b\u1ea1n.<\/p>\n<\/li>\n<li data-nodeid=\"53523\">\n<p data-nodeid=\"53524\"><strong data-nodeid=\"53704\">T\u00edch h\u1ee3p \u0111a n\u1ec1n t\u1ea3ng<\/strong>: C\u00e1c s\u01a1 \u0111\u1ed3 \u0111\u01b0\u1ee3c t\u1ea1o trong tr\u00f2 chuy\u1ec7n web c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c nh\u1eadp li\u1ec1n m\u1ea1ch v\u00e0o \u1ee9ng d\u1ee5ng Desktop c\u1ee7a Visual Paradigm \u0111\u1ec3 ch\u1ec9nh s\u1eeda n\u00e2ng cao v\u00e0 ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n.<\/p>\n<\/li>\n<\/ul>\n<p data-nodeid=\"53526\"><img alt=\"Visual Paradigm AI Chatbot and VPasCode function as an integrated ecosystem for diagramming\" data-nodeid=\"53712\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a1f9cfeee1ed.png\"\/><\/p>\n<blockquote data-nodeid=\"53527\">\n<p data-nodeid=\"53528\"><strong data-nodeid=\"53717\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0Quy tr\u00ecnh AI sang m\u00e3 ngu\u1ed3n. Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n chuy\u1ec3n \u0111\u1ed5i m\u1ed9t l\u1eddi nh\u1eafc b\u1eb1ng ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean th\u00e0nh s\u01a1 \u0111\u1ed3 c\u00f3 c\u1ea5u tr\u00fac, sau \u0111\u00f3 c\u00f3 th\u1ec3 xem trong tr\u00ecnh ch\u1ec9nh s\u1eeda VPasCode \u0111\u1ec3 \u0111\u1ecbnh d\u1ea1ng ch\u00ednh x\u00e1c v\u00e0 xu\u1ea5t m\u00e3 ngu\u1ed3n.<\/p>\n<\/blockquote>\n<h2 data-nodeid=\"53529\">2. H\u01b0\u1edbng d\u1eabn t\u1eebng b\u01b0\u1edbc: B\u1eaft \u0111\u1ea7u<\/h2>\n<p data-nodeid=\"53530\">Th\u1ef1c hi\u1ec7n quy tr\u00ecnh \u0111\u01b0\u1ee3c t\u1ed1i \u01b0u h\u00f3a n\u00e0y \u0111\u1ec3 t\u1ea1o s\u01a1 \u0111\u1ed3 \u0111\u1ea7u ti\u00ean c\u1ee7a b\u1ea1n.<\/p>\n<h3 data-nodeid=\"53531\">B\u01b0\u1edbc 1: Truy c\u1eadp tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n<\/h3>\n<p data-nodeid=\"53532\">\u0110i\u1ec1u h\u01b0\u1edbng \u0111\u1ebfn giao di\u1ec7n ch\u00ednh th\u1ee9c c\u1ee7a tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI:<\/p>\n<ul data-nodeid=\"53533\">\n<li data-nodeid=\"53534\">\n<p data-nodeid=\"53535\"><strong data-nodeid=\"53729\">URL<\/strong>:\u00a0<a data-nodeid=\"53728\" href=\"https:\/\/chat.visual-paradigm.com\/\">https:\/\/chat.visual-paradigm.com<\/a><\/p>\n<\/li>\n<li data-nodeid=\"53536\">\n<p data-nodeid=\"53537\"><strong data-nodeid=\"53734\">H\u00e0nh \u0111\u1ed9ng<\/strong>: \u0110\u0103ng nh\u1eadp b\u1eb1ng t\u00e0i kho\u1ea3n mi\u1ec5n ph\u00ed \u0111\u1ec3 l\u01b0u c\u00e1c cu\u1ed9c tr\u00f2 chuy\u1ec7n v\u00e0 xu\u1ea5t s\u01a1 \u0111\u1ed3. Kh\u00f4ng c\u1ea7n th\u1ebb t\u00edn d\u1ee5ng cho b\u1ea3n d\u00f9ng th\u1eed c\u01a1 b\u1ea3n.<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"53541\">B\u01b0\u1edbc 2: B\u1eaft \u0111\u1ea7u m\u1ed9t cu\u1ed9c tr\u00f2 chuy\u1ec7n m\u1edbi<\/h3>\n<ol data-nodeid=\"53542\">\n<li data-nodeid=\"53543\">\n<p data-nodeid=\"53544\">Nh\u1ea5n v\u00e0o\u00a0<strong data-nodeid=\"53749\">+ Tr\u00f2 chuy\u1ec7n m\u1edbi<\/strong>\u00a0n\u00fat \u1edf thanh b\u00ean.<\/p>\n<\/li>\n<li data-nodeid=\"53545\">\n<p data-nodeid=\"53546\">\u0110\u1eb7t t\u00ean cho cu\u1ed9c tr\u00f2 chuy\u1ec7n c\u1ee7a b\u1ea1n (v\u00ed d\u1ee5: \u201cLu\u1ed3ng thanh to\u00e1n th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed\u201d) \u0111\u1ec3 gi\u1eef cho d\u1ef1 \u00e1n c\u1ee7a b\u1ea1n \u0111\u01b0\u1ee3c t\u1ed5 ch\u1ee9c r\u00f5 r\u00e0ng.<\/p>\n<\/li>\n<\/ol>\n<h3 data-nodeid=\"53547\">B\u01b0\u1edbc 3: M\u00f4 t\u1ea3 v\u00e0 t\u1ea1o ra<\/h3>\n<p data-nodeid=\"53548\">Nh\u1eadp m\u1ed9t l\u1eddi nh\u1eafc r\u00f5 r\u00e0ng b\u1eb1ng ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean. Tr\u00ed tu\u1ec7 nh\u00e2n t\u1ea1o hi\u1ec3u \u0111\u01b0\u1ee3c ng\u1eef c\u1ea3nh v\u00e0 s\u1ebd t\u1ea1o ra lo\u1ea1i s\u01a1 \u0111\u1ed3 ph\u00f9 h\u1ee3p.<\/p>\n<p data-nodeid=\"53549\"><strong data-nodeid=\"53761\">V\u00ed d\u1ee5 l\u1eddi nh\u1eafc<\/strong>:<\/p>\n<blockquote data-nodeid=\"53550\">\n<p data-nodeid=\"53551\">\u201cT\u1ea1o m\u1ed9t s\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1 UML cho ng\u01b0\u1eddi d\u00f9ng \u0111\u0103ng nh\u1eadp v\u00e0o m\u1ed9t trang web. Bao g\u1ed3m c\u00e1c b\u01b0\u1edbc nh\u1eadp th\u00f4ng tin x\u00e1c th\u1ef1c, x\u00e1c th\u1ef1c t\u1eeb m\u00e1y ch\u1ee7 v\u00e0 x\u1eed l\u00fd l\u1ed7i khi m\u1eadt kh\u1ea9u kh\u00f4ng h\u1ee3p l\u1ec7.\u201d<\/p>\n<\/blockquote>\n<p data-nodeid=\"53552\"><strong data-nodeid=\"53769\">Ti\u1ebfp theo s\u1ebd x\u1ea3y ra \u0111i\u1ec1u g\u00ec<\/strong>:<\/p>\n<ul data-nodeid=\"53553\">\n<li data-nodeid=\"53554\">\n<p data-nodeid=\"53555\">Tr\u00ed tu\u1ec7 nh\u00e2n t\u1ea1o t\u1ea1o ra m\u1ed9t s\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1 v\u1edbi c\u00e1c \u0111\u01b0\u1eddng s\u1ed1ng (Ng\u01b0\u1eddi d\u00f9ng, Giao di\u1ec7n \u0111\u0103ng nh\u1eadp, M\u00e1y ch\u1ee7, C\u01a1 s\u1edf d\u1eef li\u1ec7u).<\/p>\n<\/li>\n<li data-nodeid=\"53556\">\n<p data-nodeid=\"53557\">N\u00f3 bao g\u1ed3m c\u00e1c thanh k\u00edch ho\u1ea1t, m\u0169i t\u00ean tin nh\u1eafn v\u00e0 m\u1ed9t ph\u1ea7n\u00a0<code data-backticks=\"1\" data-nodeid=\"53772\">alt<\/code>\u00a0ph\u1ea7n \u0111\u1ec3 bi\u1ec3u di\u1ec5n logic nh\u00e1nh (th\u00f4ng tin x\u00e1c th\u1ef1c h\u1ee3p l\u1ec7 so v\u1edbi kh\u00f4ng h\u1ee3p l\u1ec7).<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"53558\">B\u01b0\u1edbc 4: Tinh ch\u1ec9nh b\u1eb1ng ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean<\/h3>\n<p data-nodeid=\"53559\">Kh\u00f4ng th\u00edch phi\u00ean b\u1ea3n \u0111\u1ea7u ti\u00ean? H\u00e3y tr\u00f2 chuy\u1ec7n v\u1edbi n\u00f3.<\/p>\n<ul data-nodeid=\"53560\">\n<li data-nodeid=\"53561\">\n<p data-nodeid=\"53562\"><strong data-nodeid=\"53785\">Th\u00eam logic<\/strong>: \u201cTh\u00eam b\u01b0\u1edbc x\u00e1c th\u1ef1c hai y\u1ebfu t\u1ed1 sau khi x\u00e1c th\u1ef1c m\u1eadt kh\u1ea9u.\u201d<\/p>\n<\/li>\n<li data-nodeid=\"53563\">\n<p data-nodeid=\"53564\"><strong data-nodeid=\"53797\">S\u1eeda \u0111\u1ed5i<\/strong>: \u201cThay \u0111\u1ed5i th\u00f4ng b\u00e1o l\u1ed7i \u0111\u1ec3 hi\u1ec3n th\u1ecb \u2018T\u00e0i kho\u1ea3n b\u1ecb kh\u00f3a\u2019 sau ba l\u1ea7n th\u1eed th\u1ea5t b\u1ea1i.\u201d<\/p>\n<\/li>\n<li data-nodeid=\"53565\">\n<p data-nodeid=\"53566\"><strong data-nodeid=\"53805\">Phong c\u00e1ch<\/strong>: \u201cL\u00e0m b\u1ed1 c\u1ee5c g\u1ecdn g\u00e0ng h\u01a1n \u0111\u1ec3 ph\u00f9 h\u1ee3p v\u1edbi slide tr\u00ecnh b\u00e0y.\u201d<\/p>\n<\/li>\n<\/ul>\n<p data-nodeid=\"53567\"><img alt=\"A UML Use Case Diagram for an online shopping system, generated by the AI Diagramming Chatbot.\" data-nodeid=\"53808\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/uml-activity-diagram-generated-by-ai-uml-diagram-generator-chatbot.jpg\"\/><\/p>\n<blockquote data-nodeid=\"53568\">\n<p data-nodeid=\"53569\"><strong data-nodeid=\"53817\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0M\u1ed9t s\u01a1 \u0111\u1ed3 BPMN \u201cQuy tr\u00ecnh x\u1eed l\u00fd \u0111\u01a1n h\u00e0ng\u201d hi\u1ec3n th\u1ecb c\u00e1c l\u00e0n l\u00e0n cho Kh\u00e1ch h\u00e0ng, H\u1ec7 th\u1ed1ng, Kho h\u00e0ng v\u00e0 V\u1eadn chuy\u1ec3n, minh h\u1ecda c\u00e1ch tr\u00ed tu\u1ec7 nh\u00e2n t\u1ea1o x\u1eed l\u00fd c\u00e1c lu\u1ed3ng quy tr\u00ecnh ph\u1ee9c t\u1ea1p.<\/p>\n<\/blockquote>\n<h2 data-nodeid=\"53570\">3. C\u00e1c kh\u00e1i ni\u1ec7m ch\u00ednh v\u00e0 v\u00ed d\u1ee5 v\u1edbi PlantUML<\/h2>\n<h3 data-nodeid=\"53571\">3.1 Kh\u00e1i ni\u1ec7m ch\u00ednh: S\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1 (Lu\u1ed3ng t\u01b0\u01a1ng t\u00e1c)<\/h3>\n<p data-nodeid=\"53572\">S\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1 th\u1ec3 hi\u1ec7n th\u1ee9 t\u1ef1 c\u00e1c tin nh\u1eafn gi\u1eefa c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng theo th\u1eddi gian. Tr\u1ee3 l\u00fd chat AI xu\u1ea5t s\u1eafc trong vi\u1ec7c t\u1ea1o ra nh\u1eefng s\u01a1 \u0111\u1ed3 n\u00e0y v\u1edbi logic ph\u1ee9c t\u1ea1p nh\u01b0 v\u00f2ng l\u1eb7p v\u00e0 nh\u00e1nh \u0111i\u1ec1u ki\u1ec7n.<\/p>\n<p data-nodeid=\"53573\"><strong data-nodeid=\"53825\">V\u00ed d\u1ee5 l\u1eddi nh\u1eafc<\/strong>:<\/p>\n<blockquote data-nodeid=\"53574\">\n<p data-nodeid=\"53575\">\u201cT\u1ea1o s\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1 cho quy tr\u00ecnh thanh to\u00e1n d\u1ecbch v\u1ee5 vi m\u00f4, n\u01a1i D\u1ecbch v\u1ee5 Gi\u1ecf h\u00e0ng g\u1ecdi H\u1ec7 th\u1ed1ng Kho h\u00e0ng v\u00e0 C\u1ed5ng thanh to\u00e1n. X\u1eed l\u00fd tr\u01b0\u1eddng h\u1ee3p h\u00e0ng t\u1ed3n kho th\u1ea5p.\u201d<\/p>\n<\/blockquote>\n<p data-nodeid=\"53576\"><strong data-nodeid=\"53833\">V\u00ed d\u1ee5 PlantUML \u0111\u01b0\u1ee3c t\u1ea1o ra<\/strong>:<\/p>\n<p id=\"xfnAnjw\"><img alt=\"\" class=\"alignnone size-full wp-image-19465\" decoding=\"async\" height=\"871\" loading=\"lazy\" sizes=\"auto, (max-width: 1918px) 100vw, 1918px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632789d6806.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632789d6806.png 1918w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632789d6806-300x136.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632789d6806-1024x465.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632789d6806-768x349.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632789d6806-1536x698.png 1536w\" 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\/#plantuml:PP5DQuGm443lWVo7mLDxM4gl7jfTR1MXTAM1Ge-fpb9PJIGP5Q4_lXEpj8lD8IJptdn4zvwqex7lf1ZuqDRje0r1aesUR8yk0UqXsy3SMKDe6ZWCmohasso-W48tjJN62cfZb6P2GzOje1PFsAzMkRKglVIiGQ49PxsiKbL88KK6kmV8KtXlSORGJeeyX3ALGe4K8a-QD8igX4iEPrzOdnNP-doJbDpoFhcLecIy-uvvApjCkktqPuUFy87-xjM6RhgZIE4NIm6yOlMgIA5ojaRlBnD7MXLNnSSwyEkqCDGRUlvCk1R_O_5jHzUWowmvjQx7HWhiF5x6UB7pFtkauscbpyvPnxhXd3tl_7T_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:RP8_IyD05C3tW_iEZqmw577je8KhIKCL2kdWUgGX5vfUIdEAWxk3WtKGLui8BiL1GUWX3bVy7lTDVEaXYS4Cb-Ezt_lTkp-zKl65Ef_bbCnnaiNPd4i5tb2OLIn0c4UPUi1BO2t0wXUPmiJgP_pvYqAgH4vsfDyY-rRVeEe2KGWogs-RrgW53wo-1YMilaFjK1GDDcoppEfxfCQ2Im6gC2kvuqO19PGmw1o1tuMpPDPSbHA_Ih2e2q6Y6EhwN774eoeSOfY999v6geYdUzwftNmeLtZexLCI8jMvSkNClBdCSJKzm0Dxh_IKy5pLIKe0FsSV1TYErMl8pMUpQyUCWjezhce5n4vP6wh-jijTKodkwRMzXjloTccUu1Bl3wImcxN4mFTA_h99NYOmi9ilzN_rYTKFsLy0RvQI7exuJdu0\" \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=\"53577\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nparticipant \"Kh\u00e1ch h\u00e0ng\" as C\r\nparticipant \"\u1ee8ng d\u1ee5ng Frontend\" as F\r\nparticipant \"D\u1ecbch v\u1ee5 Gi\u1ecf h\u00e0ng\" as CS\r\nparticipant \"H\u1ec7 th\u1ed1ng Kho h\u00e0ng\" as IS\r\nparticipant \"C\u1ed5ng Thanh to\u00e1n\" as PG\r\n\r\nC -&gt; F: Xem Gi\u1ecf h\u00e0ng\r\nF -&gt; CS: GetCartData\r\nCS -&gt; IS: CheckStock(\"M\u1eb7t h\u00e0ng1\")\r\nIS --|&gt; CS: C\u00f3 h\u00e0ng? C\u00f3\/Kh\u00f4ng\r\n\r\nalt C\u00f3 h\u00e0ng\r\n    CS -&gt; PG: X\u1eed l\u00fd Thanh to\u00e1n\r\n    PG --|&gt; CS: Th\u00e0nh c\u00f4ng\r\n    CS -&gt; IS: \u0110\u1eb7t gi\u1eef h\u00e0ng\r\n    CS --&gt; F: \u0110\u00e3 x\u00e1c nh\u1eadn \u0110\u01a1n h\u00e0ng\r\nelse H\u1ebft h\u00e0ng\r\n    CS --&gt; F: L\u1ed7i H\u1ebft h\u00e0ng\r\nend\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:RP8_IyD05C3tW_iEZqmw577je8KhIKCL2kdWUgGX5vfUIdEAWxk3WtKGLui8BiL1GUWX3bVy7lTDVEaXYS4Cb-Ezt_lTkp-zKl65Ef_bbCnnaiNPd4i5tb2OLIn0c4UPUi1BO2t0wXUPmiJgP_pvYqAgH4vsfDyY-rRVeEe2KGWogs-RrgW53wo-1YMilaFjK1GDDcoppEfxfCQ2Im6gC2kvuqO19PGmw1o1tuMpPDPSbHA_Ih2e2q6Y6EhwN774eoeSOfY999v6geYdUzwftNmeLtZexLCI8jMvSkNClBdCSJKzm0Dxh_IKy5pLIKe0FsSV1TYErMl8pMUpQyUCWjezhce5n4vP6wh-jijTKodkwRMzXjloTccUu1Bl3wImcxN4mFTA_h99NYOmi9ilzN_rYTKFsLy0RvQI7exuJdu0\" \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:PP5DQuGm443lWVo7mLDxM4gl7jfTR1MXTAM1Ge-fpb9PJIGP5Q4_lXEpj8lD8IJptdn4zvwqex7lf1ZuqDRje0r1aesUR8yk0UqXsy3SMKDe6ZWCmohasso-W48tjJN62cfZb6P2GzOje1PFsAzMkRKglVIiGQ49PxsiKbL88KK6kmV8KtXlSORGJeeyX3ALGe4K8a-QD8igX4iEPrzOdnNP-doJbDpoFhcLecIy-uvvApjCkktqPuUFy87-xjM6RhgZIE4NIm6yOlMgIA5ojaRlBnD7MXLNnSSwyEkqCDGRUlvCk1R_O_5jHzUWowmvjQx7HWhiF5x6UB7pFtkauscbpyvPnxhXd3tl_7T_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<p data-nodeid=\"53578\"><img alt=\"UML Component Diagram: A Definitive Guide to Designing Modular Software with AI - AI Chatbot\" data-nodeid=\"53836\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/ai-powered-chatbot-for-component-diagram-1.jpg\"\/><\/p>\n<blockquote data-nodeid=\"53579\">\n<p data-nodeid=\"53580\"><strong data-nodeid=\"53841\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0M\u1ed9t s\u01a1 \u0111\u1ed3 th\u00e0nh ph\u1ea7n theo l\u1edbp th\u1ec3 hi\u1ec7n c\u00e1c l\u1edbp Giao di\u1ec7n Ng\u01b0\u1eddi d\u00f9ng, D\u1ecbch v\u1ee5 Kho h\u00e0ng v\u00e0 L\u01b0u tr\u1eef D\u1eef li\u1ec7u, minh h\u1ecda c\u00e1ch AI x\u1eed l\u00fd m\u00f4 h\u00ecnh h\u00f3a ki\u1ebfn tr\u00fac.<\/p>\n<\/blockquote>\n<h3 data-nodeid=\"53581\">3.2 Kh\u00e1i ni\u1ec7m ch\u00ednh: S\u01a1 \u0111\u1ed3 L\u1edbp (Thi\u1ebft k\u1ebf C\u1ea5u tr\u00fac)<\/h3>\n<p data-nodeid=\"53582\">S\u01a1 \u0111\u1ed3 l\u1edbp \u0111\u1ecbnh ngh\u0129a c\u1ea5u tr\u00fac t\u0129nh c\u1ee7a m\u1ed9t h\u1ec7 th\u1ed1ng, bao g\u1ed3m c\u00e1c l\u1edbp, thu\u1ed9c t\u00ednh v\u00e0 m\u1ed1i quan h\u1ec7.<\/p>\n<p data-nodeid=\"53583\"><strong data-nodeid=\"53848\">V\u00ed d\u1ee5 l\u1eddi nh\u1eafc<\/strong>:<\/p>\n<blockquote data-nodeid=\"53584\">\n<p data-nodeid=\"53585\">\u201cT\u1ea1o m\u1ed9t s\u01a1 \u0111\u1ed3 l\u1edbp UML cho H\u1ec7 th\u1ed1ng Qu\u1ea3n l\u00fd Th\u01b0 vi\u1ec7n. Bao g\u1ed3m c\u00e1c l\u1edbp Book (S\u00e1ch), Member (Th\u00e0nh vi\u00ean) v\u00e0 BookLoan (M\u01b0\u1ee3n S\u00e1ch). X\u00e1c \u0111\u1ecbnh c\u00e1c m\u1ed1i quan h\u1ec7 nh\u01b0 \u2018Th\u00e0nh vi\u00ean m\u01b0\u1ee3n S\u00e1ch\u2019 v\u00e0 \u2018Th\u01b0 vi\u1ec7n qu\u1ea3n l\u00fd M\u01b0\u1ee3n S\u00e1ch\u2019.\u201d<\/p>\n<\/blockquote>\n<p data-nodeid=\"53586\"><strong data-nodeid=\"53864\">V\u00ed d\u1ee5 PlantUML \u0111\u01b0\u1ee3c t\u1ea1o<\/strong>:<\/p>\n<p id=\"YxHdMOc\"><img alt=\"\" class=\"alignnone size-full wp-image-19475\" decoding=\"async\" height=\"875\" loading=\"lazy\" sizes=\"auto, (max-width: 1918px) 100vw, 1918px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6328be65af8.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6328be65af8.png 1918w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6328be65af8-300x137.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6328be65af8-1024x467.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6328be65af8-768x350.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6328be65af8-1536x701.png 1536w\" 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\/#plantuml:TPAnRiCW48PtItw7awUqbOUi7gAewX8fLOO-mTcSR5JWAY2DgghldhEDFT2O0RYVNz_F8OuXeezNQygYCnW2d7NhqV_0Rrc0Z1U7bXhuY5wxFac6EuoQNIQZKg_CdxkdL0T2tmsBz5SMIyGeBVnQXpO3rL57asVs54_Yp4ZlP5loAyjEvKbbl0SjjEmztpRkTcPqAzD8yO-ehlI6KQ3Zd90wNBx9oybAN9wosbTGrr0zLtFh3GniLDWqJFaDM7JOazXIbuzT0mOOxoY-LPsTXsbDYNfsaTgmfOm657sHKm7ObSLHTl8rxW00\" 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:ZLAxJiCm5DqZvH-kCl5G1jOCg48i7L27zWSSnwej71ji9mo8cPcHhQXYOI4I6n6JKVx3VuBR9bMJjX8URFdSUnw-yaWRf4oHyp3076aDCzfKK39NFmju30FmwroWd2GmDOg9UGjnYP5XKWnWb6LNKjwUdBPtJP32j8EUmg2pcTetJ3k3cEbqe1GRPlZGT4xCs7SEf6RKBWJrcUt7DdASapmbQfmDL0-y99LAoOS34M-QojLBqK_A9H9xgbb1hf7nmgkzbMLwKXBbArlLtSb65n74CKHdKJk917XJ5M2Kgp-FjlOI9N1VkE-b06v_LeoT8HodOFi5-GOAWrvjmxbSdrttxykw0_-3qlDFu8ww-XqCBLpzYg6q2na68o8o_z7-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=\"53587\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nclass Th\u01b0 vi\u1ec7n {\r\n    +name: String\r\n    +location: String\r\n    +addBook()\r\n    +searchBook()\r\n}\r\n\r\nclass S\u00e1ch {\r\n    -isbn: String\r\n    -title: String\r\n    +getIsbn()\r\n}\r\n\r\nclass Th\u00e0nh vi\u00ean {\r\n    -memberId: String\r\n    -name: String\r\n    +borrowBook()\r\n}\r\n\r\nclass M\u01b0\u1ee3nS\u00e1ch {\r\n    -loanId: String\r\n    -dueDate: Date\r\n    +isOverdue()\r\n}\r\n\r\nTh\u01b0 vi\u1ec7n \"1\" -- \"*\" S\u00e1ch : l\u01b0u tr\u1eef\r\nTh\u01b0 vi\u1ec7n \"1\" -- \"*\" M\u01b0\u1ee3nS\u00e1ch : qu\u1ea3n l\u00fd\r\nTh\u00e0nh vi\u00ean \"1\" -- \"*\" M\u01b0\u1ee3nS\u00e1ch : c\u00f3 m\u01b0\u1ee3n\r\nM\u01b0\u1ee3nS\u00e1ch \"1\" --&gt; \"1\" S\u00e1ch : \u0111\u01b0\u1ee3c m\u01b0\u1ee3n\r\nM\u01b0\u1ee3nS\u00e1ch \"1\" --&gt; \"1\" Th\u00e0nh vi\u00ean : ph\u1ee5 thu\u1ed9c v\u00e0o\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:ZLAxJiCm5DqZvH-kCl5G1jOCg48i7L27zWSSnwej71ji9mo8cPcHhQXYOI4I6n6JKVx3VuBR9bMJjX8URFdSUnw-yaWRf4oHyp3076aDCzfKK39NFmju30FmwroWd2GmDOg9UGjnYP5XKWnWb6LNKjwUdBPtJP32j8EUmg2pcTetJ3k3cEbqe1GRPlZGT4xCs7SEf6RKBWJrcUt7DdASapmbQfmDL0-y99LAoOS34M-QojLBqK_A9H9xgbb1hf7nmgkzbMLwKXBbArlLtSb65n74CKHdKJk917XJ5M2Kgp-FjlOI9N1VkE-b06v_LeoT8HodOFi5-GOAWrvjmxbSdrttxykw0_-3qlDFu8ww-XqCBLpzYg6q2na68o8o_z7-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:TPAnRiCW48PtItw7awUqbOUi7gAewX8fLOO-mTcSR5JWAY2DgghldhEDFT2O0RYVNz_F8OuXeezNQygYCnW2d7NhqV_0Rrc0Z1U7bXhuY5wxFac6EuoQNIQZKg_CdxkdL0T2tmsBz5SMIyGeBVnQXpO3rL57asVs54_Yp4ZlP5loAyjEvKbbl0SjjEmztpRkTcPqAzD8yO-ehlI6KQ3Zd90wNBx9oybAN9wosbTGrr0zLtFh3GniLDWqJFaDM7JOazXIbuzT0mOOxoY-LPsTXsbDYNfsaTgmfOm657sHKm7ObSLHTl8rxW00\" 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=\"53588\"><img alt=\"UML Class Diagram Generator\" data-nodeid=\"53867\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/05\/UML-Class-Diagram.png\"\/><\/p>\n<blockquote data-nodeid=\"53589\">\n<p data-nodeid=\"53590\"><strong data-nodeid=\"53872\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0M\u1ed9t s\u01a1 \u0111\u1ed3 l\u1edbp UML cho H\u1ec7 th\u1ed1ng Th\u01b0 vi\u1ec7n th\u1ec3 hi\u1ec7n 6 l\u1edbp v\u1edbi thu\u1ed9c t\u00ednh (tr\u01b0\u1eddng ri\u00eang t\u01b0) v\u00e0 ph\u01b0\u01a1ng th\u1ee9c (thao t\u00e1c c\u00f4ng khai), c\u00f9ng c\u00e1c m\u1ed1i quan h\u1ec7 gi\u1eefa ch\u00fang.<\/p>\n<\/blockquote>\n<h3 data-nodeid=\"53591\">3.3 Kh\u00e1i ni\u1ec7m ch\u00ednh: S\u01a1 \u0111\u1ed3 Tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng (Y\u00eau c\u1ea7u ch\u1ee9c n\u0103ng)<\/h3>\n<p data-nodeid=\"53592\">S\u01a1 \u0111\u1ed3 tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng ghi l\u1ea1i c\u00e1c y\u00eau c\u1ea7u ch\u1ee9c n\u0103ng c\u1ee7a m\u1ed9t h\u1ec7 th\u1ed1ng t\u1eeb g\u00f3c nh\u00ecn ng\u01b0\u1eddi d\u00f9ng.<\/p>\n<p data-nodeid=\"53593\"><strong data-nodeid=\"53881\">V\u00ed d\u1ee5 l\u1eddi nh\u1eafc<\/strong>:<\/p>\n<blockquote data-nodeid=\"53594\">\n<p data-nodeid=\"53595\">\u201cT\u1ea1o m\u1ed9t s\u01a1 \u0111\u1ed3 tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng cho \u1ee8ng d\u1ee5ng Giao h\u00e0ng Th\u1ef1c ph\u1ea9m. C\u00e1c t\u00e1c nh\u00e2n: Kh\u00e1ch h\u00e0ng, T\u00e0i x\u1ebf Giao h\u00e0ng, Qu\u1ea3n l\u00fd Nh\u00e0 h\u00e0ng. C\u00e1c tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng: \u0110\u1eb7t \u0111\u01a1n h\u00e0ng, Theo d\u00f5i \u0111\u01a1n h\u00e0ng, \u0110\u00e1nh gi\u00e1 Giao h\u00e0ng, Qu\u1ea3n l\u00fd Th\u1ef1c \u0111\u01a1n.\u201d<\/p>\n<\/blockquote>\n<p data-nodeid=\"53596\"><strong data-nodeid=\"53889\">V\u00ed d\u1ee5 PlantUML \u0111\u01b0\u1ee3c t\u1ea1o<\/strong>:<\/p>\n<p id=\"rHZvFri\"><img alt=\"\" class=\"alignnone size-full wp-image-19476\" decoding=\"async\" height=\"868\" loading=\"lazy\" sizes=\"auto, (max-width: 1915px) 100vw, 1915px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632904c822f.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632904c822f.png 1915w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632904c822f-300x136.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632904c822f-1024x464.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632904c822f-768x348.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a632904c822f-1536x696.png 1536w\" 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\/#plantuml:LP112i8m44NtWTnXoBuBsvqBgIIuLKGFCAI3YAqfarGKyUucRIrnbSz_UPaXjG_8OUXQAGPF5Zs1EhHe2VRS42j03sUzokY9qTx-Q9dH8mO2G-trGVoQUIM556Y3Or1wyC5riwgN-cU0uNIEr9ZaQIYApRI2CNCkipm-tiULy1B7xvnhbl6mxNi5RoaW-V5-Kc4Dz0nqR_pKbrDVvVr7YZgc-2jV\" 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:SoWkIImgAStDuUKgBKvDJYnELL0wCk7Xhkqb2aSc7bkOfv1nU45Ukf92Oh52gBCXagAGZDHyXPJ3MpEng3D2CUpmmhmCXVJCmmiLt3CJyr4K6lDoyN8b9fVa5oaeUMSSNfYSWIJj39SAERmWKw7YuQxzw2Quk80CS5RGrRM3EC_51SesGcA3RIb8JCvEJ0SwwE7k5Ndf2YaFToy5KWZp548o7kxUcAnGaF5mryfS9OLgNYu5a9b0Cq36ALWfv3xSFL-XwE7kcNdf43aZY9mnkbmjBvT3QbuAC501\" \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=\"53597\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nusecase \"\u0110\u1eb7t \u0111\u01a1n h\u00e0ng\" as UC1\r\nusecase \"Theo d\u00f5i \u0111\u01a1n h\u00e0ng\" as UC2\r\nusecase \"\u0110\u00e1nh gi\u00e1 Giao h\u00e0ng\" as UC3\r\n\r\nactor \"Kh\u00e1ch h\u00e0ng\" as C\r\nactor \"T\u00e0i x\u1ebf Giao h\u00e0ng\" as DD\r\n\r\nC --&gt; UC1\r\nDD --&gt; UC2\r\nDD --&gt; UC3\r\n\r\npackage \"\u1ee8ng d\u1ee5ng Giao h\u00e0ng Th\u1ef1c ph\u1ea9m\" {\r\n  UC1 -- UC2 : m\u1edf r\u1ed9ng\r\n  UC2 -- UC3 : m\u1edf r\u1ed9ng\r\n}\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:SoWkIImgAStDuUKgBKvDJYnELL0wCk7Xhkqb2aSc7bkOfv1nU45Ukf92Oh52gBCXagAGZDHyXPJ3MpEng3D2CUpmmhmCXVJCmmiLt3CJyr4K6lDoyN8b9fVa5oaeUMSSNfYSWIJj39SAERmWKw7YuQxzw2Quk80CS5RGrRM3EC_51SesGcA3RIb8JCvEJ0SwwE7k5Ndf2YaFToy5KWZp548o7kxUcAnGaF5mryfS9OLgNYu5a9b0Cq36ALWfv3xSFL-XwE7kcNdf43aZY9mnkbmjBvT3QbuAC501\" \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:LP112i8m44NtWTnXoBuBsvqBgIIuLKGFCAI3YAqfarGKyUucRIrnbSz_UPaXjG_8OUXQAGPF5Zs1EhHe2VRS42j03sUzokY9qTx-Q9dH8mO2G-trGVoQUIM556Y3Or1wyC5riwgN-cU0uNIEr9ZaQIYApRI2CNCkipm-tiULy1B7xvnhbl6mxNi5RoaW-V5-Kc4Dz0nqR_pKbrDVvVr7YZgc-2jV\" 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=\"53598\"><img alt=\"Thumbnail of UML Use Case Diagram\" data-nodeid=\"53892\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/uml-use-case-diagram-generated-by-ai-uml-diagram-generator-chatbot.jpg\"\/><\/p>\n<blockquote data-nodeid=\"53599\">\n<p data-nodeid=\"53600\"><strong data-nodeid=\"53901\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0S\u01a1 \u0111\u1ed3 tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng cho m\u1ed9t \u1ee9ng d\u1ee5ng giao \u0111\u1ed3 \u0103n \u201cFood Delivery App\u201d v\u1edbi c\u00e1c t\u00e1c nh\u00e2n Kh\u00e1ch h\u00e0ng v\u00e0 Nh\u00e0 h\u00e0ng, th\u1ec3 hi\u1ec7n c\u00e1c ch\u1ee9c n\u0103ng ch\u00ednh v\u00e0 m\u1ed1i quan h\u1ec7 m\u1edf r\u1ed9ng.<\/p>\n<\/blockquote>\n<h3 data-nodeid=\"53601\">3.4 Kh\u00e1i ni\u1ec7m ch\u00ednh: S\u01a1 \u0111\u1ed3 M\u00e1y tr\u1ea1ng th\u00e1i (Qu\u1ea3n l\u00fd v\u00f2ng \u0111\u1eddi)<\/h3>\n<p data-nodeid=\"53602\">S\u01a1 \u0111\u1ed3 tr\u1ea1ng th\u00e1i m\u00f4 h\u00ecnh h\u00f3a h\u00e0nh vi \u0111\u1ed9ng c\u1ee7a m\u1ed9t \u0111\u1ed1i t\u01b0\u1ee3ng, cho th\u1ea5y c\u00e1ch n\u00f3 ph\u1ea3n \u1ee9ng v\u1edbi c\u00e1c s\u1ef1 ki\u1ec7n theo th\u1eddi gian.<\/p>\n<p data-nodeid=\"53603\"><strong data-nodeid=\"53908\">V\u00ed d\u1ee5 \u0111\u1ea7u v\u00e0o<\/strong>:<\/p>\n<blockquote data-nodeid=\"53604\">\n<p data-nodeid=\"53605\">\u201cT\u1ea1o m\u1ed9t s\u01a1 \u0111\u1ed3 tr\u1ea1ng th\u00e1i cho m\u00e1y b\u00e1n h\u00e0ng t\u1ef1 \u0111\u1ed9ng. C\u00e1c tr\u1ea1ng th\u00e1i: \u0110ang ch\u1edd, \u0110\u00e3 \u0111\u01b0a xu, \u0110\u00e3 ch\u1ecdn s\u1ea3n ph\u1ea9m, \u0110ang ph\u00e1t h\u00e0nh, Kh\u00f4ng ho\u1ea1t \u0111\u1ed9ng.\u201d<\/p>\n<\/blockquote>\n<p data-nodeid=\"53606\"><strong data-nodeid=\"53916\">V\u00ed d\u1ee5 PlantUML \u0111\u01b0\u1ee3c t\u1ea1o ra<\/strong>:<\/p>\n<p id=\"QrUIQjD\"><img alt=\"\" class=\"alignnone size-full wp-image-19477\" decoding=\"async\" height=\"870\" loading=\"lazy\" sizes=\"auto, (max-width: 1918px) 100vw, 1918px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a63294f41890.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a63294f41890.png 1918w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a63294f41890-300x136.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a63294f41890-1024x464.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a63294f41890-768x348.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a63294f41890-1536x697.png 1536w\" 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\/#plantuml:LP71QiCm38RlWRo3w77G5zXX55e6PQmv37e9FGXRJSHY9TXEdx-ManJtPEdtP-a37q947sStr5Mg8e5bx3mwk99ObWv-qVGiL5S02x0xsu5sW06qAFBZo09d2UGZsGneKZwCvE2F1Z8Ri3G5Sk8maGHTh7I6rgnSrSmHndjwxXzi5faKDVSrg2jbsuyRxFTVBqqzSv15Fu6pQcxQ1mviRqhbNgd5BN4X5rc-3N4q_yrF9bT0sKqnqJs6xrbiKE8LRnhftlGe7PrcUbjMsYV88KiaGJ5q8R9a5NvZYecU9cH_7DqqK4nZ3-ddqeS-0G00\" 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:TPB1IiD048RlXRx3qAFG5_0WXHQXYFRGO-bXJSRkOZ89sOte4tWIb9uy28OUn5i5JyqnfU-nRzBPDIcjjATa_dp_xFylwMaZCfF7KRkbDmMitsmv1vFPLK4pCB8g55nNnHFSLWM1h3wTQiiV3xxJhDs2VtHd_Ifu2AGjFpf0ShE4OHZXKR1Qy9xDKi1ZNgFzHD4frAry8T1sjI18fLrznxLhZ146vcIMb0VZmyjZxe7IAP8-5l5ALhyyoOHLqtIkRQFSZEx6c3seWAtEF3cRGhTxiUlhdbvmhU0S51-I6JzCkCiYXSYMprE7Uj6XVrKOrlvbQ31ckBdtES6zJ7oGB--hSUTiQh1N2dsPKwWTiPERPFmza7mjECZnuEZzGWp5Gf514XJW3MA8eOCFcBsD6QP2PVqaJYCqlBQ75F9FjGK0\" \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=\"53607\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\ns\u01a1 \u0111\u1ed3 tr\u1ea1ng th\u00e1i M\u00e1y b\u00e1n h\u00e0ng t\u1ef1 \u0111\u1ed9ng\r\n  tr\u1ea1ng th\u00e1i \"\u0110ang ch\u1edd\" nh\u01b0 Idle\r\n  tr\u1ea1ng th\u00e1i \"\u0110\u00e3 \u0111\u01b0a xu\" nh\u01b0 Coin\r\n  tr\u1ea1ng th\u00e1i \"\u0110\u00e3 ch\u1ecdn s\u1ea3n ph\u1ea9m\" nh\u01b0 Select\r\n  tr\u1ea1ng th\u00e1i \"\u0110ang ph\u00e1t h\u00e0nh s\u1ea3n ph\u1ea9m\" nh\u01b0 Dispense\r\n  tr\u1ea1ng th\u00e1i \"Kh\u00f4ng ho\u1ea1t \u0111\u1ed9ng\" nh\u01b0 OutOfService\r\n\r\n  [*] --&gt; Idle\r\n  Idle --&gt; Coin : insertCoin [h\u1ee3p l\u1ec7]\r\n  Coin --&gt; Select : selectItem [h\u00e0ng t\u1ed3n kho \u0111\u1ee7]\r\n  Select --&gt; Dispense : hasFunds\r\n  Dispense --&gt; Idle : changeDue\r\n  Coin --&gt; OutOfService : maintenanceNeeded\r\n  OutOfService --&gt; Idle : repairComplete\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:TPB1IiD048RlXRx3qAFG5_0WXHQXYFRGO-bXJSRkOZ89sOte4tWIb9uy28OUn5i5JyqnfU-nRzBPDIcjjATa_dp_xFylwMaZCfF7KRkbDmMitsmv1vFPLK4pCB8g55nNnHFSLWM1h3wTQiiV3xxJhDs2VtHd_Ifu2AGjFpf0ShE4OHZXKR1Qy9xDKi1ZNgFzHD4frAry8T1sjI18fLrznxLhZ146vcIMb0VZmyjZxe7IAP8-5l5ALhyyoOHLqtIkRQFSZEx6c3seWAtEF3cRGhTxiUlhdbvmhU0S51-I6JzCkCiYXSYMprE7Uj6XVrKOrlvbQ31ckBdtES6zJ7oGB--hSUTiQh1N2dsPKwWTiPERPFmza7mjECZnuEZzGWp5Gf514XJW3MA8eOCFcBsD6QP2PVqaJYCqlBQ75F9FjGK0\" \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:LP71QiCm38RlWRo3w77G5zXX55e6PQmv37e9FGXRJSHY9TXEdx-ManJtPEdtP-a37q947sStr5Mg8e5bx3mwk99ObWv-qVGiL5S02x0xsu5sW06qAFBZo09d2UGZsGneKZwCvE2F1Z8Ri3G5Sk8maGHTh7I6rgnSrSmHndjwxXzi5faKDVSrg2jbsuyRxFTVBqqzSv15Fu6pQcxQ1mviRqhbNgd5BN4X5rc-3N4q_yrF9bT0sKqnqJs6xrbiKE8LRnhftlGe7PrcUbjMsYV88KiaGJ5q8R9a5NvZYecU9cH_7DqqK4nZ3-ddqeS-0G00\" 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=\"53608\"><img alt=\"PlantUML state diagram for a vending machine\" data-nodeid=\"53919\" decoding=\"async\" src=\"https:\/\/cdn-images.visual-paradigm.com\/features\/uml-diagram-generator\/plantuml-state-diagram-vending-machine.jpg\"\/><\/p>\n<blockquote data-nodeid=\"53609\">\n<p data-nodeid=\"53610\"><strong data-nodeid=\"53928\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0S\u01a1 \u0111\u1ed3 tr\u1ea1ng th\u00e1i PlantUML cho m\u00e1y b\u00e1n h\u00e0ng t\u1ef1 \u0111\u1ed9ng th\u1ec3 hi\u1ec7n c\u00e1c tr\u1ea1ng th\u00e1i nh\u01b0 \u0110ang ch\u1edd, \u0110\u00e3 \u0111\u01b0a xu, v\u00e0 c\u00e1c chuy\u1ec3n ti\u1ebfp \u0111\u01b0\u1ee3c k\u00edch ho\u1ea1t b\u1edfi c\u00e1c s\u1ef1 ki\u1ec7n nh\u01b0 \u2018insertCoin\u2019.<\/p>\n<\/blockquote>\n<h3 data-nodeid=\"53611\">3.5 Kh\u00e1i ni\u1ec7m ch\u00ednh: S\u01a1 \u0111\u1ed3 Ho\u1ea1t \u0111\u1ed9ng (Lu\u1ed3ng c\u00f4ng vi\u1ec7c v\u00e0 quy tr\u00ecnh)<\/h3>\n<p data-nodeid=\"53612\">S\u01a1 \u0111\u1ed3 ho\u1ea1t \u0111\u1ed9ng m\u00f4 t\u1ea3 lu\u1ed3ng \u0111i\u1ec1u khi\u1ec3n t\u1eeb ho\u1ea1t \u0111\u1ed9ng n\u00e0y sang ho\u1ea1t \u0111\u1ed9ng kh\u00e1c, th\u01b0\u1eddng \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng cho c\u00e1c quy tr\u00ecnh kinh doanh ho\u1eb7c thu\u1eadt to\u00e1n.<\/p>\n<p data-nodeid=\"53613\"><strong data-nodeid=\"53935\">V\u00ed d\u1ee5 \u0111\u1ea7u v\u00e0o<\/strong>:<\/p>\n<blockquote data-nodeid=\"53614\">\n<p data-nodeid=\"53615\">\u201cT\u1ea1o m\u1ed9t s\u01a1 \u0111\u1ed3 ho\u1ea1t \u0111\u1ed9ng cho quy tr\u00ecnh \u0111\u0103ng k\u00fd ng\u01b0\u1eddi d\u00f9ng. Bao g\u1ed3m c\u00e1c b\u01b0\u1edbc: Nh\u1eadp th\u00f4ng tin, X\u00e1c minh email, G\u1eedi OTP, X\u00e1c minh OTP, T\u00e0i kho\u1ea3n \u0111\u00e3 \u0111\u01b0\u1ee3c t\u1ea1o.\u201d<\/p>\n<\/blockquote>\n<p data-nodeid=\"53616\"><strong data-nodeid=\"53943\">V\u00ed d\u1ee5 PlantUML \u0111\u01b0\u1ee3c t\u1ea1o ra<\/strong>:<\/p>\n<p id=\"Wgfqbhr\"><img alt=\"\" class=\"alignnone size-full wp-image-19478\" decoding=\"async\" height=\"869\" loading=\"lazy\" sizes=\"auto, (max-width: 1924px) 100vw, 1924px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6329786b753.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6329786b753.png 1924w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6329786b753-300x135.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6329786b753-1024x463.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6329786b753-768x347.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/img_6a6329786b753-1536x694.png 1536w\" width=\"1924\"\/><\/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:PP312eCm38RlXRv3ZleAUfZ3UTx0uRtOY8NQZZGoVFj5tGPpf_pv-7u2gH8RuddoMcr9gw89Z0GNPEDyAWLqnZjh6A6P10bn0sGRFEN08mR85aovLW15Yy72zNuhjwr3SiFotTTU7Ocmvx-csEU-ZtDWg0dbcYrtd3W-reG-8MGXVknsZ4zeY28TnM3TeDMFVxHtzsrMCkK3Bm00\" 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:TP2zii5G4CVxpEGTjenNaEBgg50ej0J9ZcGPJfxW5hVGK6cP50eCCrJd58fZlCU-YGtX5aQpE_lVtTz-LAQgCr5f4hjEb_L1mNN1UfEwJXdg4Ulz65HapnI2Gl9pjMtN0IH84VIJ3iQY4UjB2bwDJJQ6cCtVJoblse4Ns5F9TG3AK6MpHsYqclup_gUyj89odLjDuGSXxsdP5S8m6h7EIDQqcPZRKQO6e5YlH_wpiCTcI-436HRfMD88tl1noPjNGpQ_98FOpFAzb_X1w5CF1tBXTz1Np0jI82hYvSjt\" \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=\"53617\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nb\u1eaft \u0111\u1ea7u\r\n: Nh\u1eadp th\u00f4ng tin;\r\n: X\u00e1c minh email;\r\nn\u1ebfu (H\u1ee3p l\u1ec7?) th\u00ec (c\u00f3)\r\n  : G\u1eedi OTP;\r\n  : X\u00e1c minh OTP;\r\n  n\u1ebfu (\u0110\u00fang?) th\u00ec (c\u00f3)\r\n    : T\u00e0i kho\u1ea3n \u0111\u00e3 \u0111\u01b0\u1ee3c t\u1ea1o;\r\n    d\u1eebng\r\n  ng\u01b0\u1ee3c l\u1ea1i (kh\u00f4ng)\r\n    : Hi\u1ec3n th\u1ecb l\u1ed7i;\r\n    d\u1eebng\r\n  endif\r\nng\u01b0\u1ee3c l\u1ea1i (kh\u00f4ng)\r\n  : Hi\u1ec3n th\u1ecb l\u1ed7i;\r\n  d\u1eebng\r\nendif\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/#plantuml:TP2zii5G4CVxpEGTjenNaEBgg50ej0J9ZcGPJfxW5hVGK6cP50eCCrJd58fZlCU-YGtX5aQpE_lVtTz-LAQgCr5f4hjEb_L1mNN1UfEwJXdg4Ulz65HapnI2Gl9pjMtN0IH84VIJ3iQY4UjB2bwDJJQ6cCtVJoblse4Ns5F9TG3AK6MpHsYqclup_gUyj89odLjDuGSXxsdP5S8m6h7EIDQqcPZRKQO6e5YlH_wpiCTcI-436HRfMD88tl1noPjNGpQ_98FOpFAzb_X1w5CF1tBXTz1Np0jI82hYvSjt\" \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:PP312eCm38RlXRv3ZleAUfZ3UTx0uRtOY8NQZZGoVFj5tGPpf_pv-7u2gH8RuddoMcr9gw89Z0GNPEDyAWLqnZjh6A6P10bn0sGRFEN08mR85aovLW15Yy72zNuhjwr3SiFotTTU7Ocmvx-csEU-ZtDWg0dbcYrtd3W-reG-8MGXVknsZ4zeY28TnM3TeDMFVxHtzsrMCkK3Bm00\" 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=\"53618\"><img alt=\"UML-Activity-Diagram\" data-nodeid=\"53946\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/ai-powered-chatbot-for-activity-diagram-1.jpg\"\/><\/p>\n<blockquote data-nodeid=\"53619\">\n<p data-nodeid=\"53620\"><strong data-nodeid=\"53951\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0S\u01a1 \u0111\u1ed3 l\u01b0u \u0111\u1ed3 th\u1ec3 hi\u1ec7n lu\u1ed3ng c\u00f4ng vi\u1ec7c ra quy\u1ebft \u0111\u1ecbnh v\u1edbi v\u00f2ng l\u1eb7p, c\u00e1c nh\u00e1nh \u0111\u01b0\u1eddng \u0111i v\u00e0 x\u1eed l\u00fd l\u1ed7i cho c\u01a1 ch\u1ebf th\u1eed l\u1ea1i.<\/p>\n<\/blockquote>\n<h3 data-nodeid=\"53621\">3.6 Kh\u00e1i ni\u1ec7m ch\u00ednh: Tinh ch\u1ec9nh qua h\u1ed9i tho\u1ea1i (Thi\u1ebft k\u1ebf l\u1eb7p l\u1ea1i)<\/h3>\n<p data-nodeid=\"53622\">S\u1ee9c m\u1ea1nh \u0111\u1ed9c \u0111\u00e1o c\u1ee7a tr\u1ee3 l\u00fd chatbot AI n\u1eb1m \u1edf kh\u1ea3 n\u0103ng c\u1eadp nh\u1eadt s\u01a1 \u0111\u1ed3 th\u00f4ng qua cu\u1ed9c tr\u00f2 chuy\u1ec7n m\u00e0 kh\u00f4ng c\u1ea7n b\u1eaft \u0111\u1ea7u l\u1ea1i t\u1eeb \u0111\u1ea7u.<\/p>\n<p data-nodeid=\"53623\"><strong data-nodeid=\"53979\">T\u00ecnh hu\u1ed1ng<\/strong>: B\u1ea1n c\u00f3 m\u1ed9t s\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1, nh\u01b0ng b\u00e2y gi\u1edd b\u1ea1n c\u1ea7n th\u00eam m\u1eabu \u201cB\u1ed9 ng\u1eaft m\u1ea1ch\u201d \u0111\u1ec3 t\u0103ng t\u00ednh b\u1ec1n v\u1eefng.<br \/>\n<strong data-nodeid=\"53980\">L\u1eddi nh\u1eafc<\/strong>: \u201cCh\u00e8n th\u00e0nh ph\u1ea7n B\u1ed9 ng\u1eaft m\u1ea1ch gi\u1eefa Client v\u00e0 C\u1ed5ng thanh to\u00e1n. N\u1ebfu c\u1ed5ng thanh to\u00e1n th\u1ea5t b\u1ea1i ba l\u1ea7n, k\u00edch ho\u1ea1t d\u1ecbch v\u1ee5 d\u1ef1 ph\u00f2ng.\u201d<br \/>\n<strong data-nodeid=\"53981\">K\u1ebft qu\u1ea3<\/strong>: AI t\u1ef1 \u0111\u1ed9ng th\u00eam lu\u1ed3ng s\u1ed1ng m\u1edbi, logic th\u1eed l\u1ea1i<code data-backticks=\"1\" data-nodeid=\"53977\">alt<\/code>\u00a0ph\u1ea7n, v\u00e0 lu\u1ed3ng tin nh\u1eafn d\u1ef1 ph\u00f2ng.<\/p>\n<p data-nodeid=\"53624\"><img alt=\"Visual Paradigm AI Chatbot: Turn Your Ideas into Diagrams Instantly\" data-nodeid=\"53984\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/07\/Take-a-look-at-the-architecture-diagram.png\"\/><\/p>\n<blockquote data-nodeid=\"53625\">\n<p data-nodeid=\"53626\"><strong data-nodeid=\"53989\">V\u00ed d\u1ee5 s\u01a1 \u0111\u1ed3:<\/strong>\u00a0M\u1ed9t so s\u00e1nh gi\u1eefa c\u00e1c s\u01a1 \u0111\u1ed3 ki\u1ebfn tr\u00fac cho th\u1ea5y c\u00e1ch AI x\u1eed l\u00fd k\u00fd hi\u1ec7u UML chu\u1ea9n v\u00e0 t\u00ednh nh\u1ea5t qu\u00e1n logic.<\/p>\n<\/blockquote>\n<h2 data-nodeid=\"53627\">4. T\u00ednh n\u0103ng n\u00e2ng cao: T\u00edch h\u1ee3p v\u00e0 Ph\u00e2n t\u00edch<\/h2>\n<h3 data-nodeid=\"53628\">4.1 T\u00edch h\u1ee3p tr\u00ean m\u00e1y t\u00ednh \u0111\u1ec3 b\u00e0n<\/h3>\n<p data-nodeid=\"53629\">T\u1ea1o s\u01a1 \u0111\u1ed3 b\u1eaft \u0111\u1ea7u t\u1eeb \u0111\u00e1m m\u00e2y, nh\u01b0ng \u0111\u1ec3 ph\u1ee5c v\u1ee5 c\u00f4ng vi\u1ec7c chuy\u00ean nghi\u1ec7p, b\u1ea1n c\u00f3 th\u1ec3 nh\u1eadp tr\u1ef1c ti\u1ebfp v\u00e0o \u1ee9ng d\u1ee5ng\u00a0<strong data-nodeid=\"53997\">Visual Paradigm Desktop<\/strong>\u00a0\u1ee9ng d\u1ee5ng. \u0110i\u1ec1u n\u00e0y cho ph\u00e9p:<\/p>\n<ul data-nodeid=\"53630\">\n<li data-nodeid=\"53631\">\n<p data-nodeid=\"53632\"><strong data-nodeid=\"54002\">K\u1ef9 thu\u1eadt hai chi\u1ec1u<\/strong>: \u0110\u1ed3ng b\u1ed9 h\u00f3a c\u00e1c thay \u0111\u1ed5i gi\u1eefa web v\u00e0 m\u00e1y t\u00ednh \u0111\u1ec3 b\u00e0n.<\/p>\n<\/li>\n<li data-nodeid=\"53633\">\n<p data-nodeid=\"53634\"><strong data-nodeid=\"54007\">T\u1ea1o m\u00e3<\/strong>: Xu\u1ea5t m\u00e3 Java, C# ho\u1eb7c SQL tr\u1ef1c ti\u1ebfp t\u1eeb m\u00f4 h\u00ecnh UML c\u1ee7a b\u1ea1n.<\/p>\n<\/li>\n<li data-nodeid=\"53635\">\n<p data-nodeid=\"53636\"><strong data-nodeid=\"54012\">M\u00f4 h\u00ecnh h\u00f3a ngo\u1ea1i tuy\u1ebfn<\/strong>: L\u00e0m vi\u1ec7c m\u00e0 kh\u00f4ng c\u1ea7n internet sau khi d\u1ef1 \u00e1n \u0111\u00e3 \u0111\u1ed3ng b\u1ed9.<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"53637\">4.2 Ph\u00e2n t\u00edch th\u00f4ng minh<\/h3>\n<p data-nodeid=\"53638\">Y\u00eau c\u1ea7u AI ki\u1ec3m tra s\u01a1 \u0111\u1ed3 c\u1ee7a b\u1ea1n theo c\u00e1c nguy\u00ean t\u1eafc t\u1ed1t nh\u1ea5t.<\/p>\n<ul data-nodeid=\"53639\">\n<li data-nodeid=\"53640\">\n<p data-nodeid=\"53641\"><strong data-nodeid=\"54022\">L\u1eddi nh\u1eafc<\/strong>: \u201cS\u01a1 \u0111\u1ed3 l\u1edbp n\u00e0y c\u00f3 vi ph\u1ea1m Lu\u1eadt Demeter kh\u00f4ng?\u201d<\/p>\n<\/li>\n<li data-nodeid=\"53642\">\n<p data-nodeid=\"53643\"><strong data-nodeid=\"54030\">L\u1eddi nh\u1eafc<\/strong>: \u201cX\u00e1c \u0111\u1ecbnh t\u1ea5t c\u1ea3 c\u00e1c \u0111i\u1ec3m l\u1ed7i duy nh\u1ea5t trong ki\u1ebfn tr\u00fac n\u00e0y.\u201d<\/p>\n<\/li>\n<li data-nodeid=\"53644\">\n<p data-nodeid=\"53645\"><strong data-nodeid=\"54038\">L\u1eddi nh\u1eafc<\/strong>: \u201cT\u1ea1o b\u1ea3n t\u00f3m t\u1eaft d\u1ef1 \u00e1n li\u1ec7t k\u00ea t\u1ea5t c\u1ea3 c\u00e1c tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng v\u00e0 c\u00e1c t\u00e1c nh\u00e2n c\u1ee7a ch\u00fang.\u201d<\/p>\n<\/li>\n<\/ul>\n<h2 data-nodeid=\"53646\">5. Danh s\u00e1ch tham kh\u1ea3o: T\u00e0i nguy\u00ean tr\u1ee3 l\u00fd AI<\/h2>\n<ul>\n<li data-nodeid=\"53649\"><a data-nodeid=\"54046\" href=\"https:\/\/www.visual-paradigm.com\/guide\/a-beginners-guide-to-ai-powered-uml-with-visual-paradigm\/\"><strong data-nodeid=\"54047\">H\u01b0\u1edbng d\u1eabn cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u v\u1ec1 UML \u0111\u01b0\u1ee3c h\u1ed7 tr\u1ee3 b\u1edfi AI v\u1edbi Visual Paradigm<\/strong><\/a><\/li>\n<li data-nodeid=\"53651\"><a data-nodeid=\"54052\" href=\"https:\/\/guides.visual-paradigm.com\/es\/docs\/archimate-explained-a-guide-to-ai-powered-enterprise-architecture\/part-iii-ai-powered-archimate-modeling\/chapter-6-the-ai-chatbot-as-an-architectural-co-pilot\/#content\"><strong data-nodeid=\"54053\">Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI nh\u01b0 m\u1ed9t ng\u01b0\u1eddi \u0111\u1ed3ng h\u00e0nh ki\u1ebfn tr\u00fac<\/strong><\/a><\/li>\n<li data-nodeid=\"53653\"><a data-nodeid=\"54058\" href=\"https:\/\/guides.visual-paradigm.com\/vn\/docs\/mastering-uml-visual-modeling-in-the-visual-paradigm-ai-ecosystem\/module-5-modeling-behavioral-dynamics-and-interactions\/conversational-sequence-diagrams\/#content\"><strong data-nodeid=\"54059\">S\u01a1 \u0111\u1ed3 tu\u1ea7n t\u1ef1 t\u01b0\u01a1ng t\u00e1c<\/strong><\/a><\/li>\n<li data-nodeid=\"53655\"><a data-nodeid=\"54064\" href=\"https:\/\/www.visual-paradigm.com\/cn\/features\/ai-chatbot\/\"><strong data-nodeid=\"54065\">Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI cho m\u00f4 h\u00ecnh h\u00f3a tr\u1ef1c quan<\/strong><\/a><\/li>\n<li data-nodeid=\"53657\"><a data-nodeid=\"54070\" href=\"https:\/\/ai-toolbox.visual-paradigm.com\/app\/chatbot\/\"><strong data-nodeid=\"54071\">H\u1ed9p c\u00f4ng c\u1ee5 AI Visual Paradigm \u2013 \u1ee8ng d\u1ee5ng Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n<\/strong><\/a><\/li>\n<li data-nodeid=\"53659\"><a data-nodeid=\"54076\" href=\"https:\/\/blog.visual-paradigm.com\/how-to-turn-requirements-into-diagrams-with-an-ai-chatbot\/\"><strong data-nodeid=\"54077\">L\u00e0m th\u1ebf n\u00e0o \u0111\u1ec3 chuy\u1ec3n \u0111\u1ed5i y\u00eau c\u1ea7u th\u00e0nh s\u01a1 \u0111\u1ed3 b\u1eb1ng tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI<\/strong><\/a><\/li>\n<li data-nodeid=\"53661\"><a data-nodeid=\"54082\" href=\"https:\/\/guides.visual-paradigm.com\/visual-paradigm-pipeline-ai-modeling-ecosystem-bridge\/\"><strong data-nodeid=\"54083\">D\u00f2ng ch\u1ea3y Visual Paradigm: C\u1ea7u n\u1ed1i cho m\u00f4 h\u00ecnh h\u00f3a AI<\/strong><\/a><\/li>\n<li data-nodeid=\"53663\"><a data-nodeid=\"54088\" href=\"https:\/\/www.youtube.com\/watch?v=wQ2FYYH1G0A\"><strong data-nodeid=\"54089\">Video minh h\u1ecda t\u00ednh n\u0103ng c\u1eadp nh\u1eadt lan truy\u1ec1n<\/strong><\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Ch\u00e0o m\u1eebng b\u1ea1n \u0111\u1ebfn v\u1edbi h\u01b0\u1edbng d\u1eabn ch\u00ednh x\u00e1c v\u1ec1 vi\u1ec7c s\u1eed d\u1ee5ngTr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI c\u1ee7a Visual Paradigm.<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","footnotes":""},"categories":[80],"tags":[],"class_list":["post-12102","post","type-post","status-publish","format-standard","hentry","category-ai-chatbot"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML - Cybermedian<\/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:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML - Cybermedian\" \/>\n<meta property=\"og:description\" content=\"Ch\u00e0o m\u1eebng b\u1ea1n \u0111\u1ebfn v\u1edbi h\u01b0\u1edbng d\u1eabn ch\u00ednh x\u00e1c v\u1ec1 vi\u1ec7c s\u1eed d\u1ee5ngTr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI c\u1ee7a Visual Paradigm.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/\" \/>\n<meta property=\"og:site_name\" content=\"Cybermedian\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-24T08:53:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg\" \/>\n<meta name=\"author\" content=\"curtis\" \/>\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=\"curtis\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 ph\u00fat\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/\"},\"author\":{\"name\":\"curtis\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d\"},\"headline\":\"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML\",\"datePublished\":\"2026-07-24T08:53:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/\"},\"wordCount\":2868,\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg\",\"articleSection\":[\"AI Chatbot\"],\"inLanguage\":\"vi\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/\",\"url\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/\",\"name\":\"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML - Cybermedian\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg\",\"datePublished\":\"2026-07-24T08:53:57+00:00\",\"author\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#breadcrumb\"},\"inLanguage\":\"vi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage\",\"url\":\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg\",\"contentUrl\":\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.cybermedian.com\/vn\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/#website\",\"url\":\"https:\/\/www.cybermedian.com\/vn\/\",\"name\":\"Cybermedian\",\"description\":\"H\u1ecdc m\u1ed9t \u0111i\u1ec1u m\u1edbi m\u1ed7i ng\u00e0y\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.cybermedian.com\/vn\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"vi\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d\",\"name\":\"curtis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g\",\"caption\":\"curtis\"},\"url\":\"https:\/\/www.cybermedian.com\/vn\/author\/curtis\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML - Cybermedian","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/","og_locale":"vi_VN","og_type":"article","og_title":"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML - Cybermedian","og_description":"Ch\u00e0o m\u1eebng b\u1ea1n \u0111\u1ebfn v\u1edbi h\u01b0\u1edbng d\u1eabn ch\u00ednh x\u00e1c v\u1ec1 vi\u1ec7c s\u1eed d\u1ee5ngTr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI c\u1ee7a Visual Paradigm.","og_url":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/","og_site_name":"Cybermedian","article_published_time":"2026-07-24T08:53:57+00:00","og_image":[{"url":"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg","type":"","width":"","height":""}],"author":"curtis","twitter_card":"summary_large_image","twitter_misc":{"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi":"curtis","\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"7 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#article","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/"},"author":{"name":"curtis","@id":"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d"},"headline":"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML","datePublished":"2026-07-24T08:53:57+00:00","mainEntityOfPage":{"@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/"},"wordCount":2868,"image":{"@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg","articleSection":["AI Chatbot"],"inLanguage":"vi"},{"@type":"WebPage","@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/","url":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/","name":"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML - Cybermedian","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/vn\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage"},"image":{"@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg","datePublished":"2026-07-24T08:53:57+00:00","author":{"@id":"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d"},"breadcrumb":{"@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/"]}]},{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#primaryimage","url":"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg","contentUrl":"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2025\/12\/mqdefault.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.cybermedian.com\/vn\/ai-chatbot-a-comprehensive-step-by-step-tutorial-with-diagram-as-code-using-plantuml\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cybermedian.com\/vn\/"},{"@type":"ListItem","position":2,"name":"Tr\u1ee3 l\u00fd tr\u00f2 chuy\u1ec7n AI: H\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n t\u1eebng b\u01b0\u1edbc v\u1edbi s\u01a1 \u0111\u1ed3 nh\u01b0 m\u00e3 ngu\u1ed3n s\u1eed d\u1ee5ng PlantUML"}]},{"@type":"WebSite","@id":"https:\/\/www.cybermedian.com\/vn\/#website","url":"https:\/\/www.cybermedian.com\/vn\/","name":"Cybermedian","description":"H\u1ecdc m\u1ed9t \u0111i\u1ec1u m\u1edbi m\u1ed7i ng\u00e0y","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cybermedian.com\/vn\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi"},{"@type":"Person","@id":"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d","name":"curtis","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/www.cybermedian.com\/vn\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g","caption":"curtis"},"url":"https:\/\/www.cybermedian.com\/vn\/author\/curtis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/posts\/12102","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/comments?post=12102"}],"version-history":[{"count":0,"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/posts\/12102\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/media?parent=12102"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/categories?post=12102"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cybermedian.com\/vn\/wp-json\/wp\/v2\/tags?post=12102"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}