Diferencia entre arquitectura y diseño de software.

Utilizamos estas dos palabras clave en Diseño y Arquitectura en nuestra vida laboral diaria. Pero, ¿cuál es la verdadera diferencia en diseño y arquitectura?

La arquitectura es la implementación lógica del software.

El diseño es la implementación física del software.

La arquitectura describe qué y dónde debemos hacerlo, y el diseño muestra cómo hacer las cosas.

La arquitectura se ocupa de cosas importantes, y el diseño funciona en detalle.

La arquitectura proporciona un alto nivel de diseño de componentes o módulos. El componente de diseño detalla cómo interactúan entre sí, qué patrones de diseño están disponibles para resolver este problema. Cómo romper la complejidad y qué patrón de diseño aplicar. El arquitecto proporciona un alto nivel de diseño de componentes, dejando el diseño de componentes al módulo o al diseñador del módulo.

La arquitectura admite requisitos no funcionales (registros, equilibrio de carga, tolerancia a fallas, nube, métodos de prueba, documentación, medición, seguridad, mantenimiento, etc.) y pueden ser revisados ​​y revisados ​​por otros arquitectos. debe ser aprobado Los requisitos funcionales de soporte de diseño y los cambios de diseño son componentes internos, mientras que los cambios arquitectónicos significan cambios arquitectónicos

Así que dijimos que es difícil cambiar la arquitectura porque nuestras partes o módulos de diseño dependen de ella, y si cambiamos la arquitectura, necesitamos cambiar los componentes.

Ejemplo técnico: tenemos una patente de arquitectura de 3 plantas, en la que dividimos nuestra complejidad en tres capas diferentes. Ahora la capa de presentación de mi aplicación está en forma web y ahora quiero convertirla al patrón MVC. Lo que debemos hacer es cambiar la capa de presentación.

Ahora quiero agregar métricas de registro o rendimiento para medir el rendimiento de la aplicación, ahora el cambio está en la arquitectura porque necesito cambiar todas las capas de la aplicación para cumplir con este requisito.

Un ejemplo común: - Digamos que tenemos un proyecto de casa de varios pisos antes de comenzar bienes raíces y mercado, electricidad, suministro de agua, zona de terremotos, apoyo tradicional y no convencional. Hay varios factores como el soporte. fuentes de energía y más. Estos son requisitos no funcionales, y ahora el arquitecto recopila toda esa información y comienza a crear una arquitectura aprobada por el gobierno. Una vez aprobado, comenzaremos a construir el edificio y, según sea necesario, admitiremos un máximo de 4 dormitorios para crear en nuestro edificio. Si necesitamos apoyar un apartamento de 5 habitaciones, entonces tenemos que rediseñar nuestra propia arquitectura, lo que significa que es difícil cambiar la arquitectura. Ahora creamos un apartamento, donde el cliente determina sus requisitos, como 3 dormitorios, una cocina orientada al norte, etc. Todos estos requisitos tienen su propio diseño que no afecta la arquitectura de nuestro edificio. Ahora que alguien quiere proporcionar energía solar en su apartamento, podemos ofrecer una opción si nuestra arquitectura admite fuentes de energía tradicionales.

En mi opinión, el ejemplo explica la diferencia fundamental entre arquitectura y diseño.

Comparte tus pensamientos sobre esto. Siga este enlace para la presentación.