{"id":9914,"date":"2026-05-22T17:42:53","date_gmt":"2026-05-22T09:42:53","guid":{"rendered":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/"},"modified":"2026-05-30T14:01:23","modified_gmt":"2026-05-30T06:01:23","slug":"architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks","status":"publish","type":"post","link":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/","title":{"rendered":"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML"},"content":{"rendered":"<h2 data-nodeid=\"10018\">Introducci\u00f3n<\/h2>\n<p data-nodeid=\"10019\">Los sistemas de software modernos son inherentemente complejos, compuestos por cientos de componentes interactivos, procesos concurrentes y flujos de datos intrincados. Cerrar la brecha entre los requisitos empresariales abstractos y la implementaci\u00f3n t\u00e9cnica concreta requiere un medio estandarizado y claro de comunicaci\u00f3n. El Lenguaje Unificado de Modelado (UML) sirve como ese plano universal, proporcionando un vocabulario visual que desarrolladores, arquitectos y partes interesadas pueden compartir entre disciplinas.<\/p>\n<p data-nodeid=\"10020\">Aunque el conocimiento te\u00f3rico sobre la sintaxis de UML es valioso, la verdadera maestr\u00eda surge cuando estos conceptos se aplican a un escenario coherente y real. Este estudio de caso demuestra c\u00f3mo los tres bloques fundamentales de UML\u2014<strong data-nodeid=\"10132\">Cosas<\/strong>,\u00a0<strong data-nodeid=\"10133\">Relaciones<\/strong>, y\u00a0<strong data-nodeid=\"10134\">Diagramas<\/strong>\u2014se entrelazan para modelar una arquitectura de software completa. Al aplicar cada elemento de UML al dise\u00f1o de una plataforma de comercio electr\u00f3nico moderna, traduciremos principios abstractos de modelado en artefactos visuales operativos y listos para producci\u00f3n.<\/p>\n<p id=\"KqYoeiX\"><img alt=\"\" class=\"alignnone size-full wp-image-24786\" decoding=\"async\" height=\"648\" loading=\"lazy\" sizes=\"auto, (max-width: 1187px) 100vw, 1187px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png 1187w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac-300x164.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac-1030x562.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac-768x419.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac-150x82.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac-400x218.png 400w\" width=\"1187\"\/><\/p>\n<hr data-nodeid=\"10021\"\/>\n<h2 data-nodeid=\"10022\">Contexto del estudio de caso: la plataforma de comercio electr\u00f3nico \u201cShopSphere\u201d<\/h2>\n<p data-nodeid=\"10023\"><strong data-nodeid=\"10144\">ShopSphere<\/strong>\u00a0es una plataforma en l\u00ednea escalable y nativa en la nube que conecta compradores, vendedores de terceros y personal administrativo. El sistema debe gestionar la autenticaci\u00f3n de usuarios, la gesti\u00f3n del cat\u00e1logo de productos, las operaciones del carrito de compras, el procesamiento seguro de pagos, la cumplimentaci\u00f3n de pedidos y el seguimiento en tiempo real del inventario. Para garantizar la mantenibilidad y una comunicaci\u00f3n clara entre los equipos, el equipo de arquitectura ha adoptado UML como su est\u00e1ndar principal de modelado.<\/p>\n<hr data-nodeid=\"10024\"\/>\n<h2 data-nodeid=\"10025\">Parte 1: Modelado con las \u201cCosas\u201d de UML<\/h2>\n<p data-nodeid=\"10026\">Las Cosas son los ciudadanos de primera clase de cualquier modelo de UML. Representan los sustantivos est\u00e1ticos, verbos din\u00e1micos, contenedores organizativos y comentarios explicativos que forman la base de la arquitectura de ShopSphere.<\/p>\n<h3 data-nodeid=\"10027\">1. Cosas estructurales (los sustantivos est\u00e1ticos)<\/h3>\n<p data-nodeid=\"10028\">Las cosas estructurales definen los elementos f\u00edsicos y conceptuales que persisten dentro del sistema.<\/p>\n<p id=\"rpzTJSu\"><img alt=\"\" class=\"alignnone size-full wp-image-24787\" decoding=\"async\" height=\"376\" loading=\"lazy\" sizes=\"auto, (max-width: 722px) 100vw, 722px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10250aea4d6.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10250aea4d6.png 722w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10250aea4d6-300x156.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10250aea4d6-150x78.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10250aea4d6-400x208.png 400w\" width=\"722\"\/><\/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:JL7DQW8n4Bulx3iCNggqJo0Y5f7YeLHOYqSPar63IKOcYJyjVVVEhbfwcnc-V7-Pf8oII_1rzGIpY1jF2OAxkBW3teBnc1Ab5oY9m60tOhHWE1mvKiofhj1xFj-Uj2HDbc9o4VImtEijmUo2uUYfhZesc9QKEP30Trq1F2k-5QE0ply_H0pKxK8xbp99Vr1NFtNbeivRD0Jp1Lw3UdZ3J6Uytlcmv3sB-w8-1Yun3y5oqLY38MoOFM7iO0QFQfBwMJ0cDDbndDiXtCGLUs9dExsRwG-n90jXGoafOCLos6fi61ds7ZSis3ACwqgBQdk2tdHFvi0bzm0JV4xNZ_t1E8ydzSvoRQxHD2Gdfv56hPCJZUzPfCI5yglWSY-4jgr0p-LeDNAJsHpkfVpz1zmxUMTRsieZMuAfvs9R2PBrwwgfgmb5gt_-2m00\" 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>Editar PlantUML en 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:JL7TIaCn3Bu_SDuXUED4ds28A4Dq5-BWA5vArcQkhcr6qawFuhkRpYbUbOIltrykjQ2KccBV7SCjBaCC1I4Y9FfmzdW2UvJq31mgQrjKPHZ1STfofbn8-mvZvBSKtaD-QKJNhvIsaHjuneeAf4MgArKmDdYZL9XLBPn8uBFl04w78lOTA668_nSP4-rdePUWXMHoqdTVVHTCMbRe2EOB79CvkS52RpWU-B2MDKlue0achhbCmNDTHZgPmf8v4kOzpE7MVD6a26P5LmBdkP_2ZxXXTnpyNk_7zBruaeMm8rK3FB5iLfOTpXt7Y4iMR0mNVLULh362ezcQt8PhEG8hud7s_3l_CixpphopZCEOtK2o2nRfl3dPqSKXYzIyC7uJV5WBeMyLsBfklKKU2hlDePI_gy2XaplsDLf_cTin8bVV94YUhvw6lhkaxEtutm00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\n' Habilita la mezcla de clases, casos de uso y componentes\r\nallowmixing\r\n' Ejemplo de Cosas estructurales\r\nclass Customer {\r\n  +String email\r\n  +String name\r\n  +register()\r\n}\r\ninterface IPaymentGateway {\r\n  +authorize(amount: double): boolean\r\n  +capture(transactionId: String): void\r\n}\r\nclass OrderProcessingWorkflow &lt;collaboration&gt;\r\nusecase \"Checkout\" as UC_Checkout\r\nclass InventorySyncService &lt;active&gt; {\r\n  +runPollingThread()\r\n  +updateStock()\r\n}\r\ncomponent PaymentModule\r\nnode CloudServer_AWS\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:JL7TIaCn3Bu_SDuXUED4ds28A4Dq5-BWA5vArcQkhcr6qawFuhkRpYbUbOIltrykjQ2KccBV7SCjBaCC1I4Y9FfmzdW2UvJq31mgQrjKPHZ1STfofbn8-mvZvBSKtaD-QKJNhvIsaHjuneeAf4MgArKmDdYZL9XLBPn8uBFl04w78lOTA668_nSP4-rdePUWXMHoqdTVVHTCMbRe2EOB79CvkS52RpWU-B2MDKlue0achhbCmNDTHZgPmf8v4kOzpE7MVD6a26P5LmBdkP_2ZxXXTnpyNk_7zBruaeMm8rK3FB5iLfOTpXt7Y4iMR0mNVLULh362ezcQt8PhEG8hud7s_3l_CixpphopZCEOtK2o2nRfl3dPqSKXYzIyC7uJV5WBeMyLsBfklKKU2hlDePI_gy2XaplsDLf_cTin8bVV94YUhvw6lhkaxEtutm00\" \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:JL7DQW8n4Bulx3iCNggqJo0Y5f7YeLHOYqSPar63IKOcYJyjVVVEhbfwcnc-V7-Pf8oII_1rzGIpY1jF2OAxkBW3teBnc1Ab5oY9m60tOhHWE1mvKiofhj1xFj-Uj2HDbc9o4VImtEijmUo2uUYfhZesc9QKEP30Trq1F2k-5QE0ply_H0pKxK8xbp99Vr1NFtNbeivRD0Jp1Lw3UdZ3J6Uytlcmv3sB-w8-1Yun3y5oqLY38MoOFM7iO0QFQfBwMJ0cDDbndDiXtCGLUs9dExsRwG-n90jXGoafOCLos6fi61ds7ZSis3ACwqgBQdk2tdHFvi0bzm0JV4xNZ_t1E8ydzSvoRQxHD2Gdfv56hPCJZUzPfCI5yglWSY-4jgr0p-LeDNAJsHpkfVpz1zmxUMTRsieZMuAfvs9R2PBrwwgfgmb5gt_-2m00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<ul data-nodeid=\"10030\">\n<li data-nodeid=\"10031\">\n<p data-nodeid=\"10032\"><strong data-nodeid=\"10158\">Clases<\/strong>\u00a0(<code data-backticks=\"1\" data-nodeid=\"10156\">Customer<\/code>): Define plantillas de objetos con atributos y operaciones.<\/p>\n<\/li>\n<li data-nodeid=\"10033\">\n<p data-nodeid=\"10034\"><strong data-nodeid=\"10165\">Interfaces<\/strong>\u00a0(<code data-backticks=\"1\" data-nodeid=\"10163\">IPaymentGateway<\/code>): Especifica contratos sin detalles de implementaci\u00f3n.<\/p>\n<\/li>\n<li data-nodeid=\"10035\">\n<p data-nodeid=\"10036\"><strong data-nodeid=\"10172\">Colaboraciones<\/strong>\u00a0(<code data-backticks=\"1\" data-nodeid=\"10170\">[FlujoDeProcesamientoDePedidos]<\/code>): Modelar roles cooperativos que trabajan hacia un objetivo compartido.<\/p>\n<\/li>\n<li data-nodeid=\"10037\">\n<p data-nodeid=\"10038\"><strong data-nodeid=\"10179\">Casos de uso<\/strong>\u00a0(<code data-backticks=\"1\" data-nodeid=\"10177\">Finalizar compra<\/code>): Capturar comportamientos del sistema visibles desde el exterior.<\/p>\n<\/li>\n<li data-nodeid=\"10039\">\n<p data-nodeid=\"10040\"><strong data-nodeid=\"10186\">Clases activas<\/strong>\u00a0(<code data-backticks=\"1\" data-nodeid=\"10184\">[ServicioDeSincronizaci\u00f3nDeInventario]<\/code>): Representar procesos o hilos concurrentes.<\/p>\n<\/li>\n<li data-nodeid=\"10041\">\n<p data-nodeid=\"10042\"><strong data-nodeid=\"10193\">Componentes<\/strong>\u00a0(<code data-backticks=\"1\" data-nodeid=\"10191\">[M\u00f3duloDePago]<\/code>): M\u00f3dulos f\u00edsicos desplegables y reemplazables.<\/p>\n<\/li>\n<li data-nodeid=\"10043\">\n<p data-nodeid=\"10044\"><strong data-nodeid=\"10200\">Nodos<\/strong>\u00a0(<code data-backticks=\"1\" data-nodeid=\"10198\">[ServidorEnLaNube_AWS]<\/code>): Recursos computacionales en tiempo de ejecuci\u00f3n.<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"10045\">2. Cosas comportamentales (los verbos din\u00e1micos)<\/h3>\n<p data-nodeid=\"10046\">Las cosas comportamentales capturan c\u00f3mo evoluciona el sistema con el tiempo y responde a est\u00edmulos.<\/p>\n<p id=\"Tlvijau\"><img alt=\"\" class=\"alignnone size-full wp-image-24790\" decoding=\"async\" height=\"269\" loading=\"lazy\" sizes=\"auto, (max-width: 377px) 100vw, 377px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10259dcffb5.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10259dcffb5.png 377w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10259dcffb5-300x214.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10259dcffb5-150x107.png 150w\" width=\"377\"\/><\/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:PO_F2eCm38Vl1TyXU9ax-0A33N5us64W37OFRT0oJQMcOxxzucvbfq2-tvS_pIeO9SrJOGvmOw68LdnWgEwqhZWGT1yx8WzqB8oY4A5D6yN2BEfvwnTaWSSObiNpSDLUJdhSPcBfUF1CXVcvK5yo0qw0plKnk6IbAjiGNgLkooAgPAFKUUFa7GhjlD9ypkl_9LRBSvVW31AJdjCGE_tz2m00\" 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>Editar PlantUML en 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:RP112i9034Nt0tE7q8rrqGi8Ig5k18MktCUP82FjfAIf5_C8Nioe84fTXlVV_v1wL1IT-iwx1Uooac08wNxBKBwkWFqfCKI2dlA85ngNtc5G5cYu7mGZYtU3TQIG1imA3OeavIsz-VXB3spgbbeyitUV1gWsCmzMW36smd4AMXRxT18kR7oMC_UhrRGhTYcYaYMrDEERLl-NWaMFJmtMe3AHTpNbQ6zv0000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\n' Interacci\u00f3n (Intercambio de mensajes)\r\nactor Comprador\r\nparticipant CarritoDeCompras\r\nparticipant MotorDePago\r\nComprador -&gt; CarritoDeCompras : addProduct(\"Libro\")\r\nCarritoDeCompras -&gt; MotorDePago : validateCart()\r\nMotorDePago --&gt; CarritoDeCompras : cartValid = true\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:RP112i9034Nt0tE7q8rrqGi8Ig5k18MktCUP82FjfAIf5_C8Nioe84fTXlVV_v1wL1IT-iwx1Uooac08wNxBKBwkWFqfCKI2dlA85ngNtc5G5cYu7mGZYtU3TQIG1imA3OeavIsz-VXB3spgbbeyitUV1gWsCmzMW36smd4AMXRxT18kR7oMC_UhrRGhTYcYaYMrDEERLl-NWaMFJmtMe3AHTpNbQ6zv0000\" \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:PO_F2eCm38Vl1TyXU9ax-0A33N5us64W37OFRT0oJQMcOxxzucvbfq2-tvS_pIeO9SrJOGvmOw68LdnWgEwqhZWGT1yx8WzqB8oY4A5D6yN2BEfvwnTaWSSObiNpSDLUJdhSPcBfUF1CXVcvK5yo0qw0plKnk6IbAjiGNgLkooAgPAFKUUFa7GhjlD9ypkl_9LRBSvVW31AJdjCGE_tz2m00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<ul data-nodeid=\"10048\">\n<li data-nodeid=\"10049\">\n<p data-nodeid=\"10050\"><strong data-nodeid=\"10211\">Interacciones<\/strong>: Secuencias de mensajes (<code data-backticks=\"1\" data-nodeid=\"10207\">validateCart()<\/code>,\u00a0<code data-backticks=\"1\" data-nodeid=\"10209\">cartValid = true<\/code>) intercambiados entre objetos.<\/p>\n<\/li>\n<li data-nodeid=\"10051\">\n<p data-nodeid=\"10052\"><strong data-nodeid=\"10222\">M\u00e1quinas de estado<\/strong>: Transiciones de ciclo de vida (<code data-backticks=\"1\" data-nodeid=\"10216\">Pendiente<\/code>\u00a0\u2192\u00a0<code data-backticks=\"1\" data-nodeid=\"10218\">Procesando<\/code>\u00a0\u2192\u00a0<code data-backticks=\"1\" data-nodeid=\"10220\">Enviado\/Cancelado<\/code>) desencadenadas por eventos.<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"10053\">3. Agrupaci\u00f3n de cosas (Los contenedores organizativos)<\/h3>\n<p data-nodeid=\"10054\">Las cosas agrupadas descomponen modelos complejos en espacios de nombres manejables.<\/p>\n<p id=\"tCgLjMh\"><img alt=\"\" class=\"alignnone size-full wp-image-24792\" decoding=\"async\" height=\"112\" loading=\"lazy\" sizes=\"auto, (max-width: 882px) 100vw, 882px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10261a6a3c1.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10261a6a3c1.png 882w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10261a6a3c1-300x38.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10261a6a3c1-768x98.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10261a6a3c1-150x19.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10261a6a3c1-400x51.png 400w\" width=\"882\"\/><\/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:NP31QW9138Rl0_CEmOkluR9Os4DfeNWg7i9CM8VE94iIxKBfktTLHEqj8NnVadzZZkh7LcDOGrUhV1kqCXSU8LKq8mFa34dQ94pi1iBW1mB3Hf2GJsWnu1cyOZ5CcBvm95ZrejHBQwI9Ll0J0roTyAQPzDuEV9AIA8RV1tXdfA_8IzsMjKzuVpINzcZeSYjy9fuTszb96Ul0JgEY5s6xcMuFmUU7QvcMGvafkUZ-t_Y5ydRkteVznRqXpajQVm00\" 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>Editar PlantUML en 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:NP3DIaD138Nt5-OTGZU-Hil5IbSMf2lf8ip44fXahfaCtbPyAX_15tEqq5etWPEVZtEoh8xcJN8Oxc1B9km4GgUOqQ2NIXME48jCHKczArB82C9L46gRo5uuCeK1SovlmZFh8GmJlZRgfCLOZCOYGXPf0UzXW3CL7YsHNkKQepV3C7pyENwWwlprgP08McreNEeDPCpyO-hQs9stLabOkRfXAdRBtFJzWs7adgU7cPrCyKAzv8Jd9pUUkdTLYbvi_t--fdG_hxQR_Iz_IPhw5xy1\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\n' Permite mezclar clases y componentes en la misma superficie\r\nallowmixing\r\npaquete \"CoreCommerce\" {\r\n  clase Orden\r\n  clase Factura\r\n}\r\npaquete \"Gesti\u00f3n de usuarios\" {\r\n  clase Cliente\r\n  clase UsuarioAdministrador\r\n}\r\npaquete \"Integraciones externas\" {\r\n  componente [StripeConnector]\r\n  componente [FedExAPI]\r\n}\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:NP3DIaD138Nt5-OTGZU-Hil5IbSMf2lf8ip44fXahfaCtbPyAX_15tEqq5etWPEVZtEoh8xcJN8Oxc1B9km4GgUOqQ2NIXME48jCHKczArB82C9L46gRo5uuCeK1SovlmZFh8GmJlZRgfCLOZCOYGXPf0UzXW3CL7YsHNkKQepV3C7pyENwWwlprgP08McreNEeDPCpyO-hQs9stLabOkRfXAdRBtFJzWs7adgU7cPrCyKAzv8Jd9pUUkdTLYbvi_t--fdG_hxQR_Iz_IPhw5xy1\" \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:NP31QW9138Rl0_CEmOkluR9Os4DfeNWg7i9CM8VE94iIxKBfktTLHEqj8NnVadzZZkh7LcDOGrUhV1kqCXSU8LKq8mFa34dQ94pi1iBW1mB3Hf2GJsWnu1cyOZ5CcBvm95ZrejHBQwI9Ll0J0roTyAQPzDuEV9AIA8RV1tXdfA_8IzsMjKzuVpINzcZeSYjy9fuTszb96Ul0JgEY5s6xcMuFmUU7QvcMGvafkUZ-t_Y5ydRkteVznRqXpajQVm00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<ul data-nodeid=\"10056\">\n<li data-nodeid=\"10057\">\n<p data-nodeid=\"10058\"><strong data-nodeid=\"10229\">Paquetes<\/strong>: Contenedores puramente conceptuales que organizan elementos relacionados durante el desarrollo.<\/p>\n<\/li>\n<\/ul>\n<h3 data-nodeid=\"10059\">4. Cosas anotativas (Los comentarios explicativos)<\/h3>\n<p data-nodeid=\"10060\">Las cosas anotativas proporcionan claridad, restricciones y orientaci\u00f3n para desarrolladores.<\/p>\n<p id=\"TBrAEyH\"><img alt=\"\" class=\"alignnone size-full wp-image-24793\" decoding=\"async\" height=\"94\" loading=\"lazy\" sizes=\"auto, (max-width: 513px) 100vw, 513px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10264b8816c.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10264b8816c.png 513w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10264b8816c-300x55.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10264b8816c-150x27.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10264b8816c-400x73.png 400w\" width=\"513\"\/><\/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:JOzD2i9034Rt0tE7xBeGF82hAkuLFS6qZUt0D2dv0K6ykzFgmbq8xtl9rwebCPzB37r9gd2H0GLUCG3ipknTGJ2sL8upEzcslfja6g4cpJM6Tmp4XY1vd0puyLMivCar4rRfpGiU_ZqmknfaweiFkAAMdf1e09toigps3Xyi-3i29eaqMsRIZMPehi9zTLUssSU0DRj-4KDRnzhd0m00\" 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>Editar PlantUML en 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:JOyx3W8n34JxIBd3T5iWSG2gBUX1m0MoYLaY9JRaWuGGH-8KN8m4AAWiFS-CnsCk9fKQWrOsc9onIOuOTws0nLhg50XHkCX1YWaVkY_9ymngJYTQFRJYjeEZHFRKvpUZQtSqXmzXciLwMVrbDJmHFDjGVUfY7y-rXKh63SJNrrDWk53k_aibKFZTX3LnyjGz1iCsYQLisCcmrEhe6RsELYEnQt-z0G00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nclass Orden {\r\n  +Double montoTotal\r\n  +String estado\r\n}\r\nnota derecha de Orden\r\n  Regla de negocio: montoTotal debe incluir\r\n  impuestos y env\u00edo antes de que el estado cambie\r\n  a 'Procesando'.\r\nfin nota\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:JOyx3W8n34JxIBd3T5iWSG2gBUX1m0MoYLaY9JRaWuGGH-8KN8m4AAWiFS-CnsCk9fKQWrOsc9onIOuOTws0nLhg50XHkCX1YWaVkY_9ymngJYTQFRJYjeEZHFRKvpUZQtSqXmzXciLwMVrbDJmHFDjGVUfY7y-rXKh63SJNrrDWk53k_aibKFZTX3LnyjGz1iCsYQLisCcmrEhe6RsELYEnQt-z0G00\" \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:JOzD2i9034Rt0tE7xBeGF82hAkuLFS6qZUt0D2dv0K6ykzFgmbq8xtl9rwebCPzB37r9gd2H0GLUCG3ipknTGJ2sL8upEzcslfja6g4cpJM6Tmp4XY1vd0puyLMivCar4rRfpGiU_ZqmknfaweiFkAAMdf1e09toigps3Xyi-3i29eaqMsRIZMPehi9zTLUssSU0DRj-4KDRnzhd0m00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<ul data-nodeid=\"10062\">\n<li data-nodeid=\"10063\">\n<p data-nodeid=\"10064\"><strong data-nodeid=\"10236\">Notas<\/strong>: Bloques de texto con esquinas dobladas unidos a elementos para restricciones, observaciones o documentaci\u00f3n.<\/p>\n<\/li>\n<\/ul>\n<hr data-nodeid=\"10065\"\/>\n<h2 data-nodeid=\"10066\">Parte 2: Conexi\u00f3n de elementos con relaciones UML<\/h2>\n<p data-nodeid=\"10067\">Las relaciones definen las dependencias sem\u00e1nticas y estructurales que unen las cosas. La arquitectura de ShopSphere se basa en cuatro bloques constructivos relacionales principales:<\/p>\n<p id=\"PLWTJej\"><img alt=\"\" class=\"alignnone size-full wp-image-24794\" decoding=\"async\" height=\"296\" loading=\"lazy\" sizes=\"auto, (max-width: 498px) 100vw, 498px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1026822658b.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1026822658b.png 498w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1026822658b-300x178.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1026822658b-150x89.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1026822658b-400x238.png 400w\" width=\"498\"\/><\/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:RPB1QW8n48Rl2_iEmnvQQzbGQqyYYw9GUgfq-m8X6NS7iab8OiNIX-_ehY3gCNyot_ppJnOnoP1sdScpH_X28nCv6rloy7tm684irAtpjMynO9uf8sCyAPvii-BIixQHXmvjgZ7yaEANP1E6hLG87yFL9ZY5CRfmBba5r9GOec-kk6GZpOLyj3SHi4QFLgDL1nYjPMnHWo6BJtbswGc4gAuCmGpcyrt4M5Kzx5N0aj6AJXF30ooR9c3JdqQrCzIZOK-f1KsoSrPpdzKk9jTXW69ImBWieNWHObp0Pz0ipi0RdZd2q6KgE5Hfw7VW3fwVeNN6k3t84Dp-IBsDWeVug-w5T-I-2NX7Y-42tLk-8Lyb2MN9r7ljPhnhNZAb2ChPBJLvjk2i-Mly0m00\" 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>Editar PlantUML en 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:VPBHIiCm58Rl2ts7dzweanQdNerH9XF4Aulp1GxfMHl9adBI2Xk-abTxXBsOALt1eVCkvoJvl__yoSAt96stCN5qWJVTE8-I8Mn8QMVPWorMjMjMJSt2SQGCUOybYUZMBTsc4V9ZTyNoeSErWYeNHzgsB6lQuJdKL3ePZnNY5Fk-yqRopYqjXSkWzdk_e6r1mLdlRPhXaHks9Lkb2PVcy6MPq7G1GoLTnT6fAMHPVk88CypddQSy7mHlCpnu5xIKFkmjjg1Ak3fMexm_x8qk2SfPb9es56WzocWEAoJJ19CqHNAJPPC4BnBS1Oum6RqZ74bt6Lw7pgduw1tNM1jMDQ7kMFMZd8ie3FMP_mYqLx_FyCIMvG_0wFuV_I5Yf6dGFKkTeN_y8OQrhZePE76q2EyH_iut\" \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=\"10068\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\n' Tipos de relaciones en ShopSphere\r\nclass CarritoCompras\r\nclass ServicioPago\r\ninterfaz IPagador\r\nclass ProcesadorTarjetaCredito\r\nclass ProcesadorPayPal\r\n\r\n' 1. Dependencia (l\u00ednea punteada)\r\nCarritoCompras ..&gt; ServicioPago : &lt;&lt;usa&gt;&gt;\r\n\r\n' 2. Asociaci\u00f3n y agregaci\u00f3n (l\u00ednea s\u00f3lida con diamante)\r\nCliente \"1\" *-- \"0..*\" Orden : realiza &gt;\r\n\r\n' 3. Realizaci\u00f3n (l\u00ednea punteada + flecha hueca)\r\nProcesadorTarjetaCredito ..|&gt; IPagador\r\n\r\n' 4. Generalizaci\u00f3n (l\u00ednea s\u00f3lida + flecha hueca)\r\nProcesadorPayPal --|&gt; ProcesadorTarjetaCredito : hereda configuraci\u00f3n\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:VPBHIiCm58Rl2ts7dzweanQdNerH9XF4Aulp1GxfMHl9adBI2Xk-abTxXBsOALt1eVCkvoJvl__yoSAt96stCN5qWJVTE8-I8Mn8QMVPWorMjMjMJSt2SQGCUOybYUZMBTsc4V9ZTyNoeSErWYeNHzgsB6lQuJdKL3ePZnNY5Fk-yqRopYqjXSkWzdk_e6r1mLdlRPhXaHks9Lkb2PVcy6MPq7G1GoLTnT6fAMHPVk88CypddQSy7mHlCpnu5xIKFkmjjg1Ak3fMexm_x8qk2SfPb9es56WzocWEAoJJ19CqHNAJPPC4BnBS1Oum6RqZ74bt6Lw7pgduw1tNM1jMDQ7kMFMZd8ie3FMP_mYqLx_FyCIMvG_0wFuV_I5Yf6dGFKkTeN_y8OQrhZePE76q2EyH_iut\" \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:RPB1QW8n48Rl2_iEmnvQQzbGQqyYYw9GUgfq-m8X6NS7iab8OiNIX-_ehY3gCNyot_ppJnOnoP1sdScpH_X28nCv6rloy7tm684irAtpjMynO9uf8sCyAPvii-BIixQHXmvjgZ7yaEANP1E6hLG87yFL9ZY5CRfmBba5r9GOec-kk6GZpOLyj3SHi4QFLgDL1nYjPMnHWo6BJtbswGc4gAuCmGpcyrt4M5Kzx5N0aj6AJXF30ooR9c3JdqQrCzIZOK-f1KsoSrPpdzKk9jTXW69ImBWieNWHObp0Pz0ipi0RdZd2q6KgE5Hfw7VW3fwVeNN6k3t84Dp-IBsDWeVug-w5T-I-2NX7Y-42tLk-8Lyb2MN9r7ljPhnhNZAb2ChPBJLvjk2i-Mly0m00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<ul data-nodeid=\"10069\">\n<li data-nodeid=\"10070\">\n<p data-nodeid=\"10071\"><strong data-nodeid=\"10249\">Dependencia<\/strong>: Un cambio en\u00a0<code data-backticks=\"1\" data-nodeid=\"10245\">Servicio de Pago<\/code>\u00a0puede afectar\u00a0<code data-backticks=\"1\" data-nodeid=\"10247\">Carrito de Compras<\/code>.<\/p>\n<\/li>\n<li data-nodeid=\"10072\">\n<p data-nodeid=\"10073\"><strong data-nodeid=\"10262\">Asociaci\u00f3n\/Agregaci\u00f3n<\/strong>:\u00a0<code data-backticks=\"1\" data-nodeid=\"10254\">Cliente<\/code>\u00a0mantiene un enlace estructural de tipo \u00abtodo\/parte\u00bb con\u00a0<code data-backticks=\"1\" data-nodeid=\"10260\">Pedido<\/code>.<\/p>\n<\/li>\n<li data-nodeid=\"10074\">\n<p data-nodeid=\"10075\"><strong data-nodeid=\"10271\">Realizaci\u00f3n<\/strong>:\u00a0<code data-backticks=\"1\" data-nodeid=\"10267\">Procesador de Tarjeta de Cr\u00e9dito<\/code>\u00a0garantiza el contrato especificado por\u00a0<code data-backticks=\"1\" data-nodeid=\"10269\">IPaymentProcessor<\/code>.<\/p>\n<\/li>\n<li data-nodeid=\"10076\">\n<p data-nodeid=\"10077\"><strong data-nodeid=\"10280\">Generalizaci\u00f3n<\/strong>:\u00a0<code data-backticks=\"1\" data-nodeid=\"10276\">Procesador de PayPal<\/code>\u00a0especializa\u00a0<code data-backticks=\"1\" data-nodeid=\"10278\">Procesador de Tarjeta de Cr\u00e9dito<\/code>, heredando su estructura y comportamiento.<\/p>\n<\/li>\n<\/ul>\n<hr data-nodeid=\"10078\"\/>\n<h2 data-nodeid=\"10079\">Parte 3: Visualizaci\u00f3n de la Arquitectura con Diagramas UML<\/h2>\n<p data-nodeid=\"10080\">Los diagramas son proyecciones gr\u00e1ficas que agrupan cosas y relaciones en vistas espec\u00edficas para los interesados. A continuaci\u00f3n se muestran las implementaciones completas de los diagramas para ShopSphere, categorizadas seg\u00fan perspectivas estructurales y comportamentales.<\/p>\n<h3 data-nodeid=\"10081\">Diagramas Estructurales<\/h3>\n<p data-nodeid=\"10082\">Capturan la arquitectura est\u00e1tica y la implementaci\u00f3n f\u00edsica.<\/p>\n<h4 data-nodeid=\"10083\">Diagrama de Clases<\/h4>\n<p data-nodeid=\"10084\">Muestra las clases del sistema, interfaces y sus relaciones est\u00e1ticas.<\/p>\n<p id=\"CIPWwrn\"><img alt=\"\" class=\"alignnone size-full wp-image-24795\" decoding=\"async\" height=\"202\" loading=\"lazy\" sizes=\"auto, (max-width: 291px) 100vw, 291px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1027ee4af39.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1027ee4af39.png 291w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1027ee4af39-150x104.png 150w\" width=\"291\"\/><\/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:LSzD2i8m40NWVI1t6BBoXmQzG2dKZIi5Jp0qemJoKoRJXQXtrsgjk7iC7uytJH5a6MBGgWjO2hH3aHo9uQOLmFeaxDC5AA8FeDL3goyyi9lL3eKWZuTtcfnFGdp6Zc1_n6ka91FlENTKocBvtzWoEIyjijFgby7QUpqtZ7gUQBO6gge6ix5sPJwBj6eekTT3Jm00\" 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>Editar PlantUML en 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:LO-x2iCm34LtW_z1UEg3cFO7GY1TkWNQ7n2saheuJf7TfOz_hqlY8QF4kKUwJKp8wJbwAOp7ID1wHo4HlAK0s5yIkp00ZUWoyPMYO1rPPwU5Ec4Ez6HkEAyNqcKFz_Y2SuT3OHyy6OeHURDT2Q_8TqhOSZQaR5ZFeFMddZt_I7bI7HLKLGtgeFLEGRdUKB2vqWy0\" \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=\"10085\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nclase Cliente {\r\n  +String email\r\n}\r\n\r\nclase Pedido {\r\n  +Date fechaPedido\r\n}\r\n\r\ninterfaz IPago {\r\n  +processar()\r\n}\r\n\r\nclase TarjetaCredito\r\nTarjetaCredito ..|&gt; IPago\r\n\r\nCliente \"1\" --&gt; \"0..*\" Pedido\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:LO-x2iCm34LtW_z1UEg3cFO7GY1TkWNQ7n2saheuJf7TfOz_hqlY8QF4kKUwJKp8wJbwAOp7ID1wHo4HlAK0s5yIkp00ZUWoyPMYO1rPPwU5Ec4Ez6HkEAyNqcKFz_Y2SuT3OHyy6OeHURDT2Q_8TqhOSZQaR5ZFeFMddZt_I7bI7HLKLGtgeFLEGRdUKB2vqWy0\" \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:LSzD2i8m40NWVI1t6BBoXmQzG2dKZIi5Jp0qemJoKoRJXQXtrsgjk7iC7uytJH5a6MBGgWjO2hH3aHo9uQOLmFeaxDC5AA8FeDL3goyyi9lL3eKWZuTtcfnFGdp6Zc1_n6ka91FlENTKocBvtzWoEIyjijFgby7QUpqtZ7gUQBO6gge6ix5sPJwBj6eekTT3Jm00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h4 data-nodeid=\"10086\">Diagrama de objetos<\/h4>\n<p data-nodeid=\"10087\">Representa una instant\u00e1nea de objetos instanciados en tiempo de ejecuci\u00f3n.<\/p>\n<p id=\"EjFMVwR\"><img alt=\"\" class=\"alignnone size-full wp-image-24796\" decoding=\"async\" height=\"162\" loading=\"lazy\" sizes=\"auto, (max-width: 139px) 100vw, 139px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10283717380.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10283717380.png 139w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10283717380-129x150.png 129w\" width=\"139\"\/><\/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:SoWkIImgAStDuUNAJyfAJIvHKChApyXpACx8Bz1BpizLKaWiLaWsHCZw5wMa5Yae6neOcO3bye5ooOOAkhfsGAQ2bK91Jc9oQh627I-NGsfU2j1W0000\" 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>Editar PlantUML en 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:SoWkIImgAStDuUNAJyfABSbNKChApyXpACx8Bz1BpizLKW0I-Gh9XWZvWDIKp9Hy1ML30oCJg7G-K3hPK45Nrmx8LB022kRa9oSgsF5oEQJcfG1D1m00\" \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=\"10088\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nobjeto \"john@shop.com\" como c1\r\nobjeto \"Pedido #1024\" como o1\r\nc1 --&gt; o1 : coloca &gt;\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:SoWkIImgAStDuUNAJyfABSbNKChApyXpACx8Bz1BpizLKW0I-Gh9XWZvWDIKp9Hy1ML30oCJg7G-K3hPK45Nrmx8LB022kRa9oSgsF5oEQJcfG1D1m00\" \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:SoWkIImgAStDuUNAJyfAJIvHKChApyXpACx8Bz1BpizLKaWiLaWsHCZw5wMa5Yae6neOcO3bye5ooOOAkhfsGAQ2bK91Jc9oQh627I-NGsfU2j1W0000\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h4 data-nodeid=\"10089\">Diagrama de componentes<\/h4>\n<p data-nodeid=\"10090\">Ilustra dependencias modulares e interfaces.<\/p>\n<p id=\"zJkFkHt\"><img alt=\"\" class=\"alignnone size-full wp-image-24797\" decoding=\"async\" height=\"271\" loading=\"lazy\" sizes=\"auto, (max-width: 144px) 100vw, 144px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102848bf268.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102848bf268.png 144w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102848bf268-80x150.png 80w\" width=\"144\"\/><\/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:SoWkIImgAStDuULApiyjoCzBpIjHY0vFJN8iA8X54VClIaaj2aujAijCJaMLSN42yc5w57HrxJ0Ke_8XIi2w75BpKe2M0m00\" 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>Editar PlantUML en 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:SoWkIImgAStDuULApiyjoCzBpIj9LOWEJqroB2Y8HHNqBqf9BGfEBIhBJ4v5at9n0Wh0T2dewjfXg4RbGvI0TJcavgK0xGS0\" \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=\"10091\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\ncomponente [WebApp]\r\ncomponente [OrderService]\r\ncomponente [DB]\r\n[WebApp] --&gt; [OrderService]\r\n[OrderService] --&gt; [DB]\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:SoWkIImgAStDuULApiyjoCzBpIj9LOWEJqroB2Y8HHNqBqf9BGfEBIhBJ4v5at9n0Wh0T2dewjfXg4RbGvI0TJcavgK0xGS0\" \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:SoWkIImgAStDuULApiyjoCzBpIjHY0vFJN8iA8X54VClIaaj2aujAijCJaMLSN42yc5w57HrxJ0Ke_8XIi2w75BpKe2M0m00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h4 data-nodeid=\"10092\">Diagrama de despliegue<\/h4>\n<p data-nodeid=\"10093\">Mapea los componentes de software a nodos f\u00edsicos de tiempo de ejecuci\u00f3n.<\/p>\n<p id=\"bTiZzYf\"><img alt=\"\" class=\"alignnone size-full wp-image-24798\" decoding=\"async\" height=\"323\" loading=\"lazy\" sizes=\"auto, (max-width: 266px) 100vw, 266px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1028585dd88.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1028585dd88.png 266w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1028585dd88-247x300.png 247w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a1028585dd88-124x150.png 124w\" width=\"266\"\/><\/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:SoWkIImgAStDuUNAoqz9LL3ooKzCSKhCISnBJYrIKgZcvL9GW4Wu5XG4fnQLfHR56nX29HGKalDp2_BpKlDA5AB3KvE0Ic91uhMyNBKmyrmIInAJ4ejJdNDAYqlWHYBf2yWlBaalIWqEz8a5QuCPfA2hQuScwv2Qbm9qAW00\" 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>Editar PlantUML en 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:NOun3e9044NxJVOE4teIlO11iBJGK5WGOaPsGhFiR6O76yBTHON4MB__NdwH54N7mLiJs35a9NeC7Q5ZgL1wp62o1k0BZp7M94-I-sw_0e2EXyY1WX8qDteic_ODPclcBLhvCIb9YObEg9nMzzUySD9UgBwUsu-ufI3F3t-qeE2Mnoy0\" \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=\"10094\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nnodo \"BalanceadorCarga\" {\r\n  nodo \"AppServer_01\" {\r\n    componente [WebApp]\r\n  }\r\n}\r\nnodo \"ClusterBaseDatos\" {\r\n  componente [PostgreSQL]\r\n}\r\n[WebApp] --&gt; [PostgreSQL]\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:NOun3e9044NxJVOE4teIlO11iBJGK5WGOaPsGhFiR6O76yBTHON4MB__NdwH54N7mLiJs35a9NeC7Q5ZgL1wp62o1k0BZp7M94-I-sw_0e2EXyY1WX8qDteic_ODPclcBLhvCIb9YObEg9nMzzUySD9UgBwUsu-ufI3F3t-qeE2Mnoy0\" \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:SoWkIImgAStDuUNAoqz9LL3ooKzCSKhCISnBJYrIKgZcvL9GW4Wu5XG4fnQLfHR56nX29HGKalDp2_BpKlDA5AB3KvE0Ic91uhMyNBKmyrmIInAJ4ejJdNDAYqlWHYBf2yWlBaalIWqEz8a5QuCPfA2hQuScwv2Qbm9qAW00\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h3 data-nodeid=\"10095\">Diagramas de comportamiento<\/h3>\n<p data-nodeid=\"10096\">Captura flujos de trabajo din\u00e1micos, interacciones y flujo de control.<\/p>\n<h4 data-nodeid=\"10097\">Diagrama de casos de uso<\/h4>\n<p data-nodeid=\"10098\">Mapea actores a funcionalidades del sistema.<\/p>\n<p id=\"BXyoaMj\"><img alt=\"\" class=\"alignnone size-full wp-image-24799\" decoding=\"async\" height=\"197\" loading=\"lazy\" sizes=\"auto, (max-width: 296px) 100vw, 296px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10287443d64.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10287443d64.png 296w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10287443d64-150x100.png 150w\" width=\"296\"\/><\/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:JOv12W8n34NtXTuXp7uMUW0PxSg5ImyGsbWBRGDfEkBjBJe3hiBdl__8qXH5UydMP7eeA8Ea-5G8ISXhuceDUcK1rvjo8TdpEPGqojx8OoEOBiAlSHqgPeuJO8ExE_m1DwmO2QvrfJe4xmqvMhEhOPvFlz5NliK1B5J3-F43\" 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>Editar PlantUML en 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:LSyn3i8m30NGFLBkO7Nl00T0HHqG2riFO2LMiPJ6md4xS1lEm15wCI9H18p-UlQNksAeDa_9kyXA8V3wpC3tsyoa4G4XKeslw1q64uK-CMMZptYC4sSkfXX5lGjOP2W2pGKN6h5ojFMHP9G6Wam2Gx_xKISgnfAhE-UbdaNbBznxjvL1snxUctzrMrnTHpdM7ru0\" \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=\"10099\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\ndirecci\u00f3n izquierda a derecha\r\nactor Cliente\r\nactor Administrador\r\ncasoUso \"Navegar Cat\u00e1logo\" como UC1\r\ncasoUso \"Gestionar Inventario\" como UC2\r\nCliente --&gt; UC1\r\nAdministrador --&gt; UC2\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:LSyn3i8m30NGFLBkO7Nl00T0HHqG2riFO2LMiPJ6md4xS1lEm15wCI9H18p-UlQNksAeDa_9kyXA8V3wpC3tsyoa4G4XKeslw1q64uK-CMMZptYC4sSkfXX5lGjOP2W2pGKN6h5ojFMHP9G6Wam2Gx_xKISgnfAhE-UbdaNbBznxjvL1snxUctzrMrnTHpdM7ru0\" \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:JOv12W8n34NtXTuXp7uMUW0PxSg5ImyGsbWBRGDfEkBjBJe3hiBdl__8qXH5UydMP7eeA8Ea-5G8ISXhuceDUcK1rvjo8TdpEPGqojx8OoEOBiAlSHqgPeuJO8ExE_m1DwmO2QvrfJe4xmqvMhEhOPvFlz5NliK1B5J3-F43\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h4 data-nodeid=\"10100\">Diagrama de secuencia<\/h4>\n<p data-nodeid=\"10101\">Enfatiza los intercambios de mensajes ordenados por tiempo.<\/p>\n<p id=\"nVpYHSx\"><img alt=\"\" class=\"alignnone size-full wp-image-24800\" decoding=\"async\" height=\"298\" loading=\"lazy\" sizes=\"auto, (max-width: 275px) 100vw, 275px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102885eba51.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102885eba51.png 275w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102885eba51-138x150.png 138w\" width=\"275\"\/><\/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:LOvB2W8n343tXTuXIrtC1Lp855Up4yG3r3HYcNw6DkFvJGg2xi9xUIHpPzzupyaQZrmRt3irQpQ14UFc2yD5vd_YheirkWZJUMWuGQT4o0jJFXoj6L2aR8h35-5wuughEcNJJwZSlNrC_f7ecueV1oIkvHbRTY5eF5C9ykq7\" 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>Editar PlantUML en 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:NOyz3i8m38NtIBb3HXXw0GRKYAaR4k80nZ4YQdugr-tvSIGY0UlttlSiZwi0ovQJDO1IsTtN3JXMQnRb4UC2HSXTW3dAF_NNoPgFu8PpRxcJMoaHoYIK3qThEjUAAXhZYt2-ISMvnOqDltgB_0unmIFHru2s-ZrTgUKPEViGsif89UWVRm00\" \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=\"10102\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nactor Usuario\r\nparticipante Carrito\r\nparticipante API\r\nUsuario -&gt; Carrito : selectItem()\r\nCarrito -&gt; API : checkStock()\r\nAPI --&gt; Carrito : stockAvailable\r\nCarrito --&gt; Usuario : confirmAdd()\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:NOyz3i8m38NtIBb3HXXw0GRKYAaR4k80nZ4YQdugr-tvSIGY0UlttlSiZwi0ovQJDO1IsTtN3JXMQnRb4UC2HSXTW3dAF_NNoPgFu8PpRxcJMoaHoYIK3qThEjUAAXhZYt2-ISMvnOqDltgB_0unmIFHru2s-ZrTgUKPEViGsif89UWVRm00\" \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:LOvB2W8n343tXTuXIrtC1Lp855Up4yG3r3HYcNw6DkFvJGg2xi9xUIHpPzzupyaQZrmRt3irQpQ14UFc2yD5vd_YheirkWZJUMWuGQT4o0jJFXoj6L2aR8h35-5wuughEcNJJwZSlNrC_f7ecueV1oIkvHbRTY5eF5C9ykq7\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h4 data-nodeid=\"10103\">Diagrama de comunicaci\u00f3n<\/h4>\n<p data-nodeid=\"10104\">Se centra en la organizaci\u00f3n estructural de los objetos que intercambian mensajes.<\/p>\n<p id=\"QDorveF\"><img alt=\"\" class=\"alignnone size-full wp-image-24801\" decoding=\"async\" height=\"58\" loading=\"lazy\" sizes=\"auto, (max-width: 413px) 100vw, 413px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102899ccc4f.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102899ccc4f.png 413w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102899ccc4f-300x42.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102899ccc4f-150x21.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a102899ccc4f-400x56.png 400w\" width=\"413\"\/><\/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:SoWkIImgAStDuUNAJyfAJIvH22rEBO9pd86IS8vZW2Sl5qXQGTSEBADWfM1efL2ScWEKzIn9pTNGvEK2YmFbWOg1qaPM2iaPgSdPmINvoTaWQP2mBaAxiPL2KMf9QL5UK6fnQKu9I8L3QbuAq3q0\" 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>Editar PlantUML en 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:SoWkIImgAStDuUNAJyfABSbN22qkJIpAp8VpdHEBYZ9B47p704zUBgWY1LqxcBo2bOAXbK9nQavgSebdIMgkXYOl5qmAg0ge2wZ2o4eXEICrEJku93yv6wG29AoBOeYnbK9HQabfKLvGQd5fJWb8aKDgNWhGXG00\" \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=\"10105\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nobjeto Usuario\r\nobjeto Carrito\r\nobjeto API\r\nUsuario -&gt; Carrito : 1: selectItem()\r\nCarrito -&gt; API : 2: checkStock()\r\nAPI --&gt; Carrito : 3: returnResult()\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:SoWkIImgAStDuUNAJyfABSbN22qkJIpAp8VpdHEBYZ9B47p704zUBgWY1LqxcBo2bOAXbK9nQavgSebdIMgkXYOl5qmAg0ge2wZ2o4eXEICrEJku93yv6wG29AoBOeYnbK9HQabfKLvGQd5fJWb8aKDgNWhGXG00\" \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:SoWkIImgAStDuUNAJyfAJIvH22rEBO9pd86IS8vZW2Sl5qXQGTSEBADWfM1efL2ScWEKzIn9pTNGvEK2YmFbWOg1qaPM2iaPgSdPmINvoTaWQP2mBaAxiPL2KMf9QL5UK6fnQKu9I8L3QbuAq3q0\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h4 data-nodeid=\"10106\">Diagrama de estado<\/h4>\n<p data-nodeid=\"10107\">Muestra transiciones de estado reactivas.<\/p>\n<p id=\"WhYMAwj\"><img alt=\"\" class=\"alignnone size-full wp-image-24818\" decoding=\"async\" height=\"454\" loading=\"lazy\" sizes=\"auto, (max-width: 317px) 100vw, 317px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cda3dc64.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cda3dc64.png 317w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cda3dc64-209x300.png 209w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cda3dc64-105x150.png 105w\" width=\"317\"\/><\/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:SoWkIImgAStDuUMArefLqDMrK_0lICtZvGAH2a2USqv-SMgAWfL2SaPgSdP-QOc69YyNL12aEZWZiw00hA0WiJ8tDQ_4EISriIWr1QGC9WTIvvAQarcM2fJWvO8pmH90Qtcv75BpKe2E0000\" 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>Editar PlantUML en 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:SoWkIImgAStDuUMArefLqDMrKt1CoamjAiddvO8o581Ypgb5HOaf-GfM2iaPgSdP-QKb6fgyN31Ha2xNlB9CY8g2nChSrBmIvvpKnABK590wc1n4NKbHQZgG1nA6Ci4IGEjvkHnIyrA0ZW40\" \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=\"10108\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\n[*] --&gt; Abierto\r\nAbierto -&gt; Cerrado : checkout()\r\nCerrado --&gt; Enviado : paymentCleared()\r\nEnviado --&gt; Entregado\r\nEntregado --&gt; [*]\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:SoWkIImgAStDuUMArefLqDMrKt1CoamjAiddvO8o581Ypgb5HOaf-GfM2iaPgSdP-QKb6fgyN31Ha2xNlB9CY8g2nChSrBmIvvpKnABK590wc1n4NKbHQZgG1nA6Ci4IGEjvkHnIyrA0ZW40\" \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:SoWkIImgAStDuUMArefLqDMrK_0lICtZvGAH2a2USqv-SMgAWfL2SaPgSdP-QOc69YyNL12aEZWZiw00hA0WiJ8tDQ_4EISriIWr1QGC9WTIvvAQarcM2fJWvO8pmH90Qtcv75BpKe2E0000\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h4 data-nodeid=\"10109\">Diagrama de actividad<\/h4>\n<p data-nodeid=\"10110\">Destaca los flujos de control secuenciales y concurrentes.<\/p>\n<p id=\"eaAESho\"><img alt=\"\" class=\"alignnone size-full wp-image-24819\" decoding=\"async\" height=\"278\" loading=\"lazy\" sizes=\"auto, (max-width: 306px) 100vw, 306px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cf2947ac.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cf2947ac.png 306w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cf2947ac-300x273.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a158cf2947ac-150x136.png 150w\" width=\"306\"\/><\/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:BOv12iCm30Jl0lr1xt0kwQdqrD0V66TRJ1sfo6uWlu-RvhOmm-wEjKLltwKm7OafF92GLyZTP_Z0z3H_Cuc4oIsXLfdYja3RYII-OjP3k9HYAJR8JTSkc6_TWSxohmXNAFpabXE6twXzcCOkzGyx\" 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>Editar PlantUML en 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:DOv13i8m30Jlblm7loDSoeahuWScSIiBi2idwVknYZYkPZJQfG-ECJzl13MjwWZb8LMV6hHBq-ONXDNZXK1Kxk5LEYVYxG-e2TcKmq_ZsdMp5DGEiKphgQdHhr5kOXB9LwvZ1YVSEJV28jRonXS0\" \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=\"10111\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\ninicio\r\n:Recibir pedido;\r\nfork\r\n  :Procesar pago;\r\nfork de nuevo\r\n  :Asignar inventario;\r\nfin fork\r\n:Generar factura;\r\nparar\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:DOv13i8m30Jlblm7loDSoeahuWScSIiBi2idwVknYZYkPZJQfG-ECJzl13MjwWZb8LMV6hHBq-ONXDNZXK1Kxk5LEYVYxG-e2TcKmq_ZsdMp5DGEiKphgQdHhr5kOXB9LwvZ1YVSEJV28jRonXS0\" \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:BOv12iCm30Jl0lr1xt0kwQdqrD0V66TRJ1sfo6uWlu-RvhOmm-wEjKLltwKm7OafF92GLyZTP_Z0z3H_Cuc4oIsXLfdYja3RYII-OjP3k9HYAJR8JTSkc6_TWSxohmXNAFpabXE6twXzcCOkzGyx\" 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>Editar PlantUML en VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<hr data-nodeid=\"10112\"\/>\n<h2 data-nodeid=\"10113\">Conclusi\u00f3n<\/h2>\n<p data-nodeid=\"10114\">El Lenguaje Unificado de Modelado es mucho m\u00e1s que una colecci\u00f3n de diagramas y reglas de sintaxis; es un marco disciplinado para pensar sobre la complejidad del sistema. Al descomponer ShopSphere en\u00a0<strong data-nodeid=\"10319\">Cosas<\/strong>, establecimos un vocabulario preciso para las estructuras est\u00e1ticas, los comportamientos din\u00e1micos, los l\u00edmites organizativos y la documentaci\u00f3n. A trav\u00e9s de\u00a0<strong data-nodeid=\"10320\">Relaciones<\/strong>, mapeamos las dependencias sem\u00e1nticas que determinan c\u00f3mo interact\u00faan, heredan y cumplen contratos estos elementos. Finalmente, al proyectar estos elementos en objetivos<strong data-nodeid=\"10321\">Diagramas<\/strong>, creamos visualizaciones adaptadas que satisfacen necesidades distintas de los interesados, desde casos de uso de alto nivel para gerentes de producto hasta mapas detallados de despliegue para ingenieros de DevOps.<\/p>\n<p class=\"\" data-nodeid=\"10115\">Dominar UML es un proceso iterativo. A medida que los sistemas evolucionan, los modelos deben permanecer como artefactos vivos que gu\u00eden el desarrollo, faciliten la incorporaci\u00f3n y eviten el desv\u00edo arquitect\u00f3nico. Al fundamentar los conceptos abstractos de UML en estudios de caso concretos y aprovechar herramientas modernas de modelado como PlantUML, los equipos de desarrollo pueden transformar la ambig\u00fcedad en claridad, asegurando que las arquitecturas de software sean tan robustas, escalables y bien documentadas como el c\u00f3digo que las hace realidad.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introducci\u00f3n Los sistemas de software modernos son inherentemente complejos, compuestos por cientos de componentes interactivos, procesos concurrentes y flujos de datos intrincados. Cerrar la brecha entre los requisitos empresariales abstractos y la implementaci\u00f3n t\u00e9cnica concreta requiere un medio estandarizado y claro de comunicaci\u00f3n. El Lenguaje Unificado de Modelado (UML) sirve como ese plano universal, proporcionando [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":9915,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"no","_lmt_disable":"","footnotes":""},"categories":[36],"tags":[],"class_list":["post-9914","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uml","loop-entry","clr"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML - Visual Paradigm Blog Espa\u00f1ol<\/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\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML - Visual Paradigm Blog Espa\u00f1ol\" \/>\n<meta property=\"og:description\" content=\"Introducci\u00f3n Los sistemas de software modernos son inherentemente complejos, compuestos por cientos de componentes interactivos, procesos concurrentes y flujos de datos intrincados. Cerrar la brecha entre los requisitos empresariales abstractos y la implementaci\u00f3n t\u00e9cnica concreta requiere un medio estandarizado y claro de comunicaci\u00f3n. El Lenguaje Unificado de Modelado (UML) sirve como ese plano universal, proporcionando [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/\" \/>\n<meta property=\"og:site_name\" content=\"Visual Paradigm Blog Espa\u00f1ol\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-22T09:42:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-30T06:01:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png\" \/><meta property=\"og:image\" content=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1187\" \/>\n\t<meta property=\"og:image:height\" content=\"648\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/\",\"url\":\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/\",\"name\":\"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML - Visual Paradigm Blog Espa\u00f1ol\",\"isPartOf\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.visual-paradigm.com\/es\/wp-content\/uploads\/sites\/8\/2026\/05\/img_6a10246416fac.png\",\"datePublished\":\"2026-05-22T09:42:53+00:00\",\"dateModified\":\"2026-05-30T06:01:23+00:00\",\"author\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/#\/schema\/person\/a649c442f11a53040710ddec750926c6\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#primaryimage\",\"url\":\"https:\/\/blog.visual-paradigm.com\/es\/wp-content\/uploads\/sites\/8\/2026\/05\/img_6a10246416fac.png\",\"contentUrl\":\"https:\/\/blog.visual-paradigm.com\/es\/wp-content\/uploads\/sites\/8\/2026\/05\/img_6a10246416fac.png\",\"width\":1187,\"height\":648},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.visual-paradigm.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/#website\",\"url\":\"https:\/\/blog.visual-paradigm.com\/es\/\",\"name\":\"Visual Paradigm Blog Espa\u00f1ol\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.visual-paradigm.com\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/#\/schema\/person\/a649c442f11a53040710ddec750926c6\",\"name\":\"Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/es\/#\/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\/es\/author\/vpadminuser\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML - Visual Paradigm Blog Espa\u00f1ol","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\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/","og_locale":"es_ES","og_type":"article","og_title":"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML - Visual Paradigm Blog Espa\u00f1ol","og_description":"Introducci\u00f3n Los sistemas de software modernos son inherentemente complejos, compuestos por cientos de componentes interactivos, procesos concurrentes y flujos de datos intrincados. Cerrar la brecha entre los requisitos empresariales abstractos y la implementaci\u00f3n t\u00e9cnica concreta requiere un medio estandarizado y claro de comunicaci\u00f3n. El Lenguaje Unificado de Modelado (UML) sirve como ese plano universal, proporcionando [&hellip;]","og_url":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/","og_site_name":"Visual Paradigm Blog Espa\u00f1ol","article_published_time":"2026-05-22T09:42:53+00:00","article_modified_time":"2026-05-30T06:01:23+00:00","og_image":[{"url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png","type":"","width":"","height":""},{"width":1187,"height":648,"url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png","type":"image\/png"}],"author":"Admin","twitter_card":"summary_large_image","twitter_image":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a10246416fac.png","twitter_misc":{"Escrito por":"Admin","Tiempo de lectura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/","url":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/","name":"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML - Visual Paradigm Blog Espa\u00f1ol","isPartOf":{"@id":"https:\/\/blog.visual-paradigm.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#primaryimage"},"image":{"@id":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.visual-paradigm.com\/es\/wp-content\/uploads\/sites\/8\/2026\/05\/img_6a10246416fac.png","datePublished":"2026-05-22T09:42:53+00:00","dateModified":"2026-05-30T06:01:23+00:00","author":{"@id":"https:\/\/blog.visual-paradigm.com\/es\/#\/schema\/person\/a649c442f11a53040710ddec750926c6"},"breadcrumb":{"@id":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#primaryimage","url":"https:\/\/blog.visual-paradigm.com\/es\/wp-content\/uploads\/sites\/8\/2026\/05\/img_6a10246416fac.png","contentUrl":"https:\/\/blog.visual-paradigm.com\/es\/wp-content\/uploads\/sites\/8\/2026\/05\/img_6a10246416fac.png","width":1187,"height":648},{"@type":"BreadcrumbList","@id":"https:\/\/blog.visual-paradigm.com\/es\/architecting-with-clarity-a-comprehensive-case-study-on-uml-building-blocks\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.visual-paradigm.com\/es\/"},{"@type":"ListItem","position":2,"name":"Arquitectura con claridad: un estudio de caso completo sobre los bloques de construcci\u00f3n de UML"}]},{"@type":"WebSite","@id":"https:\/\/blog.visual-paradigm.com\/es\/#website","url":"https:\/\/blog.visual-paradigm.com\/es\/","name":"Visual Paradigm Blog Espa\u00f1ol","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.visual-paradigm.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blog.visual-paradigm.com\/es\/#\/schema\/person\/a649c442f11a53040710ddec750926c6","name":"Admin","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blog.visual-paradigm.com\/es\/#\/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\/es\/author\/vpadminuser\/"}]}},"modified_by":"vpjick","_links":{"self":[{"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/posts\/9914","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/comments?post=9914"}],"version-history":[{"count":0,"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/posts\/9914\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/media\/9915"}],"wp:attachment":[{"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/media?parent=9914"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/categories?post=9914"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/es\/wp-json\/wp\/v2\/tags?post=9914"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}