0% encontró este documento útil (0 votos)
18 vistas7 páginas

Taller Arquitectura de Software Ga4-220501095-Aa2-Ev06

Este documento describe los conceptos clave de la arquitectura de software, incluida su definición, el papel que desempeña en el desarrollo de software, cómo se elabora una arquitectura sólida y los elementos de diseño. El documento también explica el proceso de desarrollo de una arquitectura de software de cinco pasos.

Cargado por

oscar quiñonez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
18 vistas7 páginas

Taller Arquitectura de Software Ga4-220501095-Aa2-Ev06

Este documento describe los conceptos clave de la arquitectura de software, incluida su definición, el papel que desempeña en el desarrollo de software, cómo se elabora una arquitectura sólida y los elementos de diseño. El documento también explica el proceso de desarrollo de una arquitectura de software de cinco pasos.

Cargado por

oscar quiñonez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

TALLER ARQUITECTURA DE SOFTWARE

GA4-220501095-AA2-EV06

Oscar Alexander Quiñones Lozano

Servicio Nacional de Aprendizaje SENA


Análisis y desarrollo de software
2023
Contenido

1.Introducción...................................................................................………3
2.Cómo se define la arquitectura de software?...........................................4
3.Cuál es el papel que desarrolla en el desarrollo de software?.................4
4.Cómo se elabora la arquitectura de software?…………………………….4
5.Cómo lograr una buena arquitectura?……………….……………………..6
6.Cuáles son los elementos de diseño de una arquitectura de software…7
Introducción

En este texto explicaremos los conceptos relacionados con la arquitectura


de software, abordando su definición, el papel que desempeña en el
desarrollo de software, el proceso de elaboración de una arquitectura sólida,
la importancia de lograr una estructura de calidad y, finalmente, los
componentes fundamentales en el diseño de una arquitectura de software.
¿CÓMO SE DEFINE LA ARQUITECTURA DE SOFTWARE?

La arquitectura de software se concibe como un conjunto organizado de


patrones y abstracciones que establecen un marco definido y coherente
para la interacción con el código fuente del software.

¿CUÁL ES EL PAPEL QUE DESARROLLA EN EL PROCESO DE


DESARROLLO DE SOFTWARE?

Su función radica en la aplicación de conocimientos de programación para


planificar el diseño integral del software, permitiendo la incorporación de
detalles en etapas posteriores. Esto posibilita que los equipos de desarrollo
delimiten la visión global y comiencen la creación de prototipos, facilitando
así la gestión eficiente del proyecto de software.

¿CÓMO SE ELABORA LA ARQUITECTURA DE SOFTWARE?

1. COMPRENDE CLARAMENTE CUÁLES SON TUS REQUISITOS

• Comienza con una visión general: primero, haz un resumen breve de tus
requisitos con una “vista aérea”. Los mapas mentales son una forma eficaz
de hacer esto.

• Haz un mapa de tus requisitos funcionales: puedes usar verbos para


agrupar sustantivos. Por ejemplo, verbos como “ver” y “editar” pueden
vincular “cuenta” o “perfil” entre sí en un mapa mental de áreas funcionales.

• Ten en consideración los requisitos no funcionales: mientras trabajas en tu


mapa mental, puedes anotar tus requisitos no funcionales para utilizarlos
más adelante. Un requisito como “desempeño” es clave, pero
probablemente sea demasiado abstracto para colocarlo en el mapa mental.
2. COMIENZA A PENSAR EN CADA COMPONENTE
• Empieza con el “escenario perfecto": ¿Cómo sería tu diseño si pudieras
crearlo de manera perfecta?

• Considera y documenta qué implicaciones tienen tus requisitos: comienza


a elaborar un borrador de trabajo con tu equipo y desarróllalo gradualmente.
En primer lugar, debes observar lo que implican los requisitos en tu diseño;
por ejemplo, en qué aspectos los elementos individuales de la lista de
deseos de las partes interesadas pueden contradecirse entre sí o estar en
conflicto con otros requisitos funcionales y no funcionales.

• Espera y realiza el diseño de la arquitectura final más adelante: lo más


probable es que hagas cambios en tu planeación a lo largo de este proceso,
así que no esperes que el primer borrador se parezca mucho al resultado
final

3. DIVIDE TU ARQUITECTURA EN “REBANADAS”

• Tu diseño de arquitectura, por supuesto, pasa a una fase de planeación a


medida que decides cómo vas a entregar tu diseño. Al dividir tu arquitectura
en rebanadas, puede resultar más fácil la elaboración de este plan, de tal
manera que proporcione beneficios a los usuarios y sirva para planear
adecuadamente tu uso de los recursos de desarrollo.

4. HACER UN PROTOTIPO

• Mantén un historial de cambios riguroso: por supuesto, si no documentas


lo que vas descubriendo en la creación de los prototipos, corres el riesgo
de repetir tus errores. Anota todo: documenta minuciosamente tus
decisiones de diseño y los cambios que realices sobre la marcha.

• Ten una sola fuente de información: no será conveniente que tengas


múltiples cambios y diferentes versiones que frenen tu progreso, así que
establece un sólido control de versiones basadas en una única fuente de
información para tu documentación.
• Haz diagramas de tus prototipos: puedes usar diagramas para ayudarte a
administrar los cambios de prototipos y visualizar las diferencias entre cada
versión.

5. IDENTIFICA Y CUANTIFICA LOS REQUISITOS NO FUNCIONALES

• Desempeño: qué tan bien funciona todo tu sistema, así como las
rebanadas o capas individuales.

• Escalabilidad: el potencial actual y futuro para escalar tu sistema junto con


tus necesidades.

• Portabilidad: la portabilidad de tus datos, así como la posible portabilidad


de los componentes de tu sistema si procede o es necesario.

• Extensibilidad: explica el crecimiento futuro de tu sistema y de tu empresa,


la capacidad de adaptación de tu sistema y el esfuerzo que conlleva la
adaptación.

• Cumplimiento normativo: es otro factor esencial y que tiene un impacto


importante en el diseño general de tu proyecto

¿CÓMO LOGRAR UNA BUENA ARQUITECTURA?

La arquitectura de software también se relaciona con aspectos como


rendimiento, usabilidad, presupuesto, tecnología e incluso cuestiones
estéticas. Para implementarla de manera adecuada es recomendable
apoyarse de una metodología de desarrollo.

• Establece sistemas robustos, pero libres de frameworks. Esto permite que


la estructura sea estable e independiente.

• Ajusta la construcción y el uso de la base de datos. La base de datos es


la que debe alinearse a tus necesidades de negocio, no al revés.
• Elige las herramientas necesarias para optimizar procesos. Considera la
posibilidad de unificar servicios de automatización de sistemas e
integración de aplicaciones, colocándolos de manera estratégica desde un
inicio.

• Auditable y testable. Es importante crear un ambiente donde el código


pueda ser evaluado, medido y regulado.

¿CUÁLES SON LOS ELEMENTOS DE DISEÑO DE UNA ARQUITECTURA


DE SOFTWARE?

Entre los componentes de la arquitectura de software existe un conjunto de


interacciones entre las que sobresalen:

• Llamadas a procedimientos.

• Comportamiento de variables.

• Protocolos cliente servidor.

• Transmisión asíncrona de eventos.

También podría gustarte