Professional Documents
Culture Documents
Actividad 1
Pasos.
1. Investiga en diversas fuentes a tu alcance la importancia del desarrollo de una arquitectura de software.
2. Identifica su relación con el diseño de software.
3. Identifica y explica en qué consiste el rol de un arquitecto de software y cuáles son las actividades que debe
realizar en el proceso de desarrollo de un sistema de software.
4. Explica un concepto de arquitectura de software y desarrolla tu propio concepto.
Introducción.
La importancia de la arquitectura del software, inicia cuando juega un papel fundamental en cualquier
proyecto de desarrollo.
La arquitectura de software se encarga del diseño de elementos que tengan que ver con el software, desde
iniciando con los algoritmos hasta la estructura de los datos. Estos volviéndose conjunto de padrones a
través del cual se define como tendrá el código fuente el funcionamiento.
La arquitectura marca las pautas, restricciones y objetivos teniendo en cuenta los riesgos a los cuales se
puede presentar en el desarrollo de software y el cómo superarlos.
La arquitectura de software es una lista de decisiones que puede alterar el producto final en su totalidad.
La relación que tiene en la arquitectura y el diseño del software es muy fácil, ya que mientras la arquitectura
se encarga del desarrollo inicial del equipo electrónico, el diseño de software se encarga de diseñar todo el
Arquitectura de software
El arquitecto de software es el que tiene el papel técnico, y diseña el sistema inicial del software y hardware.
“Arquitecto de Sistemas” Se encarga de la toma de decisiones bajo el diseño al cual involucra software y
hardware.
“Arquitecto SOA” Especialista de arquitecto, este especialista se encarga de tomar el mando en las tomas de
decisiones que tomar un alto impacto en el software y la arquitectura inicial.
Durante la etapa de diseño, el arquitecto debe también hacer uso de muchas habilidades no-técnicas. La
comunicación durante esta etapa es fundamental, ya que el arquitecto debe ser capaz de comunicar el
diseño, y las decisiones que lo llevaron al mismo, ya sea de forma escrita, como parte de la documentación
de la arquitectura, o bien de forma oral al explicar el diseño de la arquitectura al equipo de desarrollo.
Durante la evaluación del diseño de la arquitectura, el arquitecto debe ser capaz de presentar el contexto del
problema y el diseño de la arquitectura al comité de evaluación, y debe ser capaz de responder a las
preguntas de dicho comité, o bien de aceptar las observaciones que se hacen al diseño.
Construcción y pruebas del sistema. Durante de la construcción del sistema, el esfuerzo técnico del
arquitecto disminuye, aunque ésto no significa que ya no se realizan actividades técnicas. En esta etapa,
desde un punto de vista técnico, el arquitecto debe terminar de completar las partes faltantes del diseño de
la arquitectura y corregir las decisiones previas que hayan resultado ser equivocadas. Desde un punto de
vista no-técnico, el esfuerzo aumenta pues el arquitecto debe enfocarse en cuidar que el sistema se
desarrolle de acuerdo a la arquitectura que se definió para el mismo. Aquí el arquitecto juega un papel de
mentor y muchas veces debe explicar cuestiones del diseño del sistema al equipo de desarrollo. El arquitecto
puede también realizar actividades de aseguramiento de calidad tales como inspecciones de productos de
trabajo, ya que su nivel técnico y conocimiento del dominio del problema le da una ventaja para identificar
problemas que posiblemente podrían no ser identificados por ingenieros con un nivel técnico y
conocimiento del dominio del problema menores. Al momento de realizar pruebas del sistema, la
participación del arquitecto es importante, particularmente al momento de realizar pruebas relativas a los
atributos de calidad del sistema.
Principales características.
Diseño. La etapa de diseño es la etapa central en relación con la arquitectura y probablemente la más
compleja. Durante esta etapa se definen las estructuras que componen la arquitectura. La creación de estas
estructuras se hace en base a patrones de diseño, tácticas de diseño y elecciones tecnológicas. El diseño que
se realiza debe buscar ante todo satisfacer los requerimientos que influencian a la arquitectura, y no
simplemente incorporar diversas tecnologías porque están “de moda”.
Documentación. Una vez creado el diseño de la arquitectura, es necesario poder comunicarlo a otros
involucrados dentro del desarrollo. La comunicación exitosa del diseño muchas veces depende de que dicho
diseño sea documentado de forma apropiada. La documentación de una arquitectura involucra la
representación de varias de sus estructuras que son representadas a través de distintas vistas. Una vista
generalmente contiene un diagrama, además de información adicional, que apoya en la comprensión de
dicho diagrama.
Evaluación. Dado que la arquitectura de software juega un papel crítico en el desarrollo, es conveniente
evaluar el diseño una vez que este ha sido documentado con el fin de identificar posibles problemas y
riesgos. La ventaja de evaluar el diseño es que es una actividad que se puede realizar de manera temprana
(aún antes de codificar), y que el costo de corrección de los defectos identificados a través de la evaluación
es mucho menor al costo que tendría el corregir estos defectos una vez que el sistema ha sido construido.
Ante todo, esto la construcción y visualización de un diseño permite mejoras de un proyecto al cual
se nos
El principio de responsabilidad única nos dice que cada clase tiene que tener una responsabilidad
única y concreta.
Cuando se inicia el desarrollo se tiene que tomar decisiones que derivan en clases, a lo cual con el
paso del desarrollo se empieza a perder coherencia.
Principio de abierto-cerrado
Este principio nos habla de no modificar códigos de una clase o entidad, si no que al querer hacer
esto mejor debemos extenderlas para que esto no se altere y pueda cumplir la función, de igual
manera la función debe de tener coherencia y el código debe estar muy bien diseñado.
Para terminar con esta actividad se realiza la retroalimentación, a lo cual con las otras actividades me va
quedando mas claro el termino arquitectónico del desarrollo del software.
Bibliografía
Disponible en https://unadmexico.blackboard.com/bbcswebdav/institution/DCEIT/2016_S1-
B2/DS/04/DDRS/U1/Descargables/Material_de_apoyo/U1_concepto_de_arquitectura_de_software.pdf
Recuperado el dia 07-10-2018
Principios básicos del diseño de software