Está en la página 1de 3

Arquitectura de software

Visión general del desarrollo de sistemas software

El desarrollo de un sistema de software puede verse como una transformación hacia la solución
técnica de terminada problemática u oportunidad con el fin de resolverla. Este cambio enfrenta a
minuto restricciones en relación con el tiempo el costo y la calidad. También este desarrollo tiene
unas actividades;

 Requerimientos
 Diseño
 Construcción
 Pruebas
 Implementación

Hay una relación de presidencia entre las anteriores actividades. Al menos algo de requerimientos
se debe hacer antes de diseñar, al menos algo de diseño se debe hacer antes de construir etc.
Dependiendo de la metodología [ CITATION hum15 \l 9226 ]

Definición de arquitectura de software

La arquitectura de software es el conjunto de estructura necesarias para razonan sobre el sistema.


Comprende elementos de software relacionados entre ellos, y propiedades de ambos.

Las propiedades de estos elementos se refieren a interfaces, los contratos que exhiben estos
módulos y que permiten hacer dependencia o conectarse entre ellos, los elementos pueden ser:

 Entidades datas en el tiempo de ejecución que son dinámicas. Como objetos e hilos.
 Entidades que se presentan en tiempo de desarrollo son lógicas, como clases y módulos.
 Entidades del mundo real son físicas, como nodos o carpetas.

[ CITATION hum15 \l 9226 ]

Arquitectura, atributos de calidad y objetivos de negoción

La arquitectura de software nos ayudara en dos factores importantes;

 Identifica módulos individuales que permiten llevar a cabo, el desarrollo en paralelo de un


sistema por partes de un equipo de desarrollo.
 Las decisiones de diseño que se tomen para estructurar un sistema permitirán o impedirán
que se satisfagan los requerimientos de calidad.
Ejemplo1. Un sistema estructurado de manera tal que una petición deba transitar
por muchos componentes implantados en nodos distintos antes de que se
devuelva una respuesta podría tener un desempeño pobre.
Ejemplo1.Un sistema estructurado a nodo que los componentes sean altamente
dependientes entre ellos es decir que estén altamente acoplados podría limitar
severamente la modificabilidad.

Algunos atributos de calidad en los que la arquitectura podría tener impacto según su estructura
son:

 Desempeño: tiene que ver con el tiempo de respuesta de un sistema a las peticiones que
se hace.
 Usabilidad: relacionada con que tan sencillo es para los usuarios hacer operaciones con el
sistema.
 Modificabilidad: tiene que ver con que tan sencillo es introducir cambios en el sistema.

Los atributos de calidad y otros requerimientos del sistema se derivan de lo que se conoce como
objeto del negocio, estos objetivos del negocio pertenecen al dominio del problema. [ CITATION
hum15 \l 9226 ]

Ciclos de desarrollo de la arquitectura

El ciclo de vida de la arquitectura de software engloba actividades particulares:

 Requerimiento de arquitectura
se enfoca en la captura, documentación y priorización de requerimientos que influyen
sobre la arquitectura y que se conoce en inglés como drivers arquitectónicos. Entonces,
los atributos de calidad juegan un rol preponderante respecto a los requerimientos así que
esta etapa hace énfasis en ellos.

 Diseño de la arquitectura
durante ella se definen las estructuras de las que se compone la arquitectura mediante la
toma de decisiones del diseño.
Esta creación estructural se hace en base a dos clases de soluciones abstractas, probadas
que son:
o Patrones de diseño
o Tácticas
o Selección de tecnología como los framework.

 Documentación de arquitectura
La documentación formal, involucra la representación de estructuras por medio de vistas,
una vista representa una estructura y contiene por lo habitual un diagrama, además que
tiene información adicional para comprender mejor este proceso.
Tiene como objetivo, dar a conocer la arquitectura a interesados como desarrolladores,
líderes del proyecto o al cliente mismo.
 Evaluación de la arquitectura

A efecto de identificar posibles riesgos o problemas, es conveniente evaluar el diseño una


vez allá sido documentado. Esta evaluación disminuye el costo en posibles correcciones,
que se tengan que hacer en el desarrollo del software, es más económica evaluarla en
arquitectura que en el código.

 Implementación de la arquitectura
Una vez este establecida la arquitectura se construye el sistema, se implementa la
arquitectura por lo que es muy importante no desviarse de ella.

[ CITATION hum15 \l 9226 ]

Beneficio de la arquitectura

El desarrollo de software enfrenta restricciones en cuanto a tiempo, costo y calidad. La


arquitectura da beneficios en función a estas restricciones las cuales son:

 Aumenta la calidad del sistema: Ya que está asociada a los atributos de calidad y a los
defectos.
 Mejorar tiempos de entrega de proyecto: Ya que se utiliza con frecuencia la reutilización,
no se trabaja en tantas fallas, las estructuras dan estimaciones más precisas del tiempo
requerido y una estructura adecuada ayuda a facilitar el trabajo y facilitar el desarrollo en
paralelo.
 Reduce costos de desarrollo: Ya que se reutiliza se usan partes o ideas, que ya pueden
estar construidas o diseñadas. Un buen diseño conduce a minorizar la necesidad de volver
a hacer el trabajo y facilita el mantenimiento.

[ CITATION hum15 \l 9226 ]

Bibliografía
humberto cervantes maceda, p. v. (2015). arquitectura de sw. cengage learming.

William David López Sánchez

Carlos Alejandro Echeverri Sambony

También podría gustarte