ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Introducción al diseño y arquitectura del software

Luis alberto PatinoTarea16 de Febrero de 2019

2.328 Palabras (10 Páginas)194 Visitas

Página 1 de 10

                                         [pic 1]

                SECRETARIA DE EDUCACION PUBLICA

                             UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO

                         INGENIERÍA EN DESARROLLO DE SOFTWARE[pic 2][pic 3][pic 4]

Diseño y Arquitectura de software             

Unidad 1. Arquitectura de Software

Actividad 1:

Foro.

El diseño arquitectónico en el desarrollo de software.

Presenta:

Luis Alberto Patiño Alcazar

    Docente: MSC. Martha Michaca Leano

Semestre:   Tercero                 Bloque:2

Colima.                                                                                          sábado, 7 de octubre de 2017[pic 5]


Unidad 1

Actividad 1:

Foro. El diseño arquitectónico en el desarrollo de software.

Contenido

Instrucciones:        3

Foro. El diseño arquitectónico en el desarrollo de software.        4

Arquitectura de software y su importancia.        4

Relación de la arquitectura de software con el diseño de software.        5

Rol de un arquitecto de software.        6

Concepto de arquitectura de software.        7

Concepto propio de arquitectura de software        8

Conclusiones.        8

Referencias        9


Instrucciones:

En un documento d Word, realiza lo siguiente:

  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.

Arquitectura de software y su importancia.

La arquitectura como tal, cobra importancia a medida que el sistema de software en cuestión aumenta de complejidad. Por defecto cualquier sistema de software tendrá una arquitectura de forma automática, aunque no se decida una, pero esta podría generar resultados no deseados o no cumplir con los requerimientos para los que fue creado.

Según (Pressman, 2010) se define como:

La arquitectura del software de un programa o sistema de cómputo es la estructura o estructuras del sistema, lo que comprende a los componentes del software, sus propiedades externas visibles y las relaciones entre ellos.

Es una representación que permite 1) analizar la efectividad del diseño para cumplir los requerimientos establecidos, 2) considerar arquitecturas arquitectónicas en una etapa en la que hacer cambios al diseño todavía es relativamente fácil y 3) reducir los riesgos asociados con la construcción del software.

Por tal motivo la propia concepción de la arquitectura de software lleva implícita su importancia, ya que de ella dependen factores como el cumplimiento de los requerimientos encontrados, la propia integridad y funcionalidad del sistema de software. Como se menciona en Sommerville (2011), La arquitectura de software es importante porque afecta el desempeño y la potencia, así como la capacidad de distribución y mantenimiento de un sistema (Bosch, 2000).

De esta manera la arquitectura del software determina en gran medida del propio destino del proyecto de software. Según (Pressman, 2010) la arquitectura adquiere su importancia de acuerdo a los tres siguientes puntos:

  • Permiten la comunicación entre todos los participantes interesados en el desarrollo del sistema.
  • Resalta las primeras decisiones que tendrán efecto profundo en todo el proceso y el resultado final.
  • Constituye un modelo relativamente fácil de entender de cómo está estructurado y como trabajan los componentes juntos dentro del sistema que se está creando.

Es así como llegamos a la conclusión de que la arquitectura del software involucra el definir qué estructuras tendrá el sistema, así como las responsabilidades de los componentes, sus cualidades, todo para implementar la funcionalidad deseada. Así de ella depende el alcanzar los estándares de calidad, ya que sirve como guía dentro del diseño, determinando así las cualidades del producto, aunque el mejorar alguna cualidad suele afectar otras, suele permitir mas no garantizar que cualquier otro requisito de calidad sea alcanzado.

Otro punto importante del desarrollo, es que este requiere ser guiado por las decisiones de su arquitectura, para lo cual es necesario e indispensable contar con la información de los requerimientos esenciales del sistema para diseñar la arquitectura que apoyara esos requerimientos. Por lo tanto, una arquitectura de software sirve también como plan de diseño para negociar los requerimientos del sistema y como medio para establecer discusiones del futuro del proyecto con clientes, desarrolladores y administradores.

Relación de la arquitectura de software con el diseño de software.

A principios de la década de los 90, la comunidad de profesionales relacionados con la producción de software se comenzó a plantear la necesidad de expresar la estructura del sistema en un nivel de abstracción superior al del diseño, al que llamaron Arquitectura de Software (Cristiá, 2008).

Como podemos ver en el párrafo anterior se entiende que la arquitectura de software se sobrentendería como algo análogo al diseño, pero en un nivel de abstracción mayor. Para entender mejor esta relación revisemos algunos conceptos.

La arquitectura de software de una programa o sistema de cómputo es la estructura o estructuras del sistema que comprenden elementos de software, las propiedades visibles externamente de esos elementos y las relaciones entre ellos. El nivel arquitectónico de la estructura de un sistema es aquella descripción donde se utilizan conectores diferentes a llamada a procedimiento y/o se imponen restricciones importantes entre los componentes y/o aparecen distintos tipos de componentes en la descripción(Cristiá, 2008).

Un diseño de software se entiende como una descripción de la estructura del software que se va a implementar, los modelos y las estructuras de datos utilizados por el sistema, las interfaces entre componentes del sistema y, en ocasiones, los algoritmos usados (Sommerville, 2011).

Como podemos observar las definiciones coinciden en decir que ambos procesos se presentan como una descripción y presentan las mismas actividades, la diferencia se presenta en el nivel de abstracción, que en el nivel arquitectónico implica el uso de elementos de software que no tiene una representación directa en lenguajes de programación, “es decir, elementos abstractos con los que trabaja el arquitecto y que los programadores deberán de refinar y proyectar sobre la tecnología de implementación disponible”(Cristiá, 2008).

 Es decir, se realizan más menos dependiendo de la metodología utilizada los mismos procesos tanto en diseño como en arquitectura, requerimientos, diseño, la documentación y la validación.

Rol de un arquitecto de software.

Al tomar la arquitectura de software como una serie de decisiones de diseño encaminadas a definir la estructura fundamental de un sistema de software, podemos por defecto atribuir que las tareas propias de la arquitectura de software recaen sobre el arquitecto de software. En cuanto a esa afirmación podría no ser del todo realista, sobre todo en proyectos donde la complejidad es tal que es mucho más practico dejar esa responsabilidad a los especialistas en determinadas áreas, en parte esto debido a que la arquitectura como tal es un área emergente, y por tal razón muchas veces se carece de personal plenamente capacitado, ya que son pocos los arquitectos que han recibido una formación teórica completa sobre el tema.

...

Descargar como (para miembros actualizados) txt (15 Kb) pdf (337 Kb) docx (284 Kb)
Leer 9 páginas más »
Disponible sólo en Clubensayos.com