100000S03I DisenoYArquitecturaDeSoftware

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

22/3/2019 100000S03I_DisenoYArquitecturaDeSoftware

SÍLABO
DISEÑO Y ARQUITECTURA DE SOFTWARE (100000S03I)
2019 - Ciclo 1 Marzo

1. DATOS GENERALES

1.1.Carrera: INGENIERÍA DE SISTEMAS E INFORMÁTICA


1.2. Coordinador: Pedro Angel Molina Velarde

1.3. Créditos: 3
1.4. Modalidad: Presencial

1.5. Horas semanales: 4

2. FUNDAMENTACIÓN
La presente asignatura da al estudiante un panorama amplio sobre lo que significa diseño y arquitectura de software considerando
los siguientes aspectos: problemas, principios, patrones, técnicas, métodos, optimización de caché, wrappers, inversión de control,
programación orientada a aspectos, balanceo de carga, frameworks, orquestación y coreografía de servicios web. Asimismo brinda
al estudiante sólidos conocimientos acerca de arquitecturas como SOA, MVC, REST y arquitecturas Cloud Computing.

3. SUMILLA
La asignatura de Diseño y Arquitectura de Software es de carácter teórico-práctico y tiene el propósito de potenciar en el
estudiante sus habilidades para analizar y diseñar una arquitectura de software. Se desarrolla los siguientes contenidos:
Introducción a la arquitectura de software, vistas y estilos de la arquitectura, requisitos de calidad de un software, diagramación
UML orientada al diseño arquitectónico de software, patrones de arquitectura, arquitectura orientada a servicios ( SOA ),
Arquitecturas en Cloud Computing , Arquitecturas para software en dispositivos móviles y documentación de una arquitectura de
software.

4. LOGRO GENERAL DE APRENDIZAJE


Al final del curso el estudiante elabora un diseño arquitectónico y detallado de un Sistema de Software, basado en los
requerimientos fundamentales del producto, considerando diferentes patrones de arquitecturas y de diseño, atributos de calidad y
diferentes principios de diseño de arquitecturas de software considerando con relevancia la arquitectura orientada a servicios (SOA
).

5. UNIDADES Y LOGROS ESPECÍFICOS DE APRENDIZAJE

Unidad de aprendizaje 1: Semana 1,2,3 y 4


Introducción a la Arquitectura de Software.

Logro específico de aprendizaje:


El estudiante formula un informe descriptivo sobre los requerimientos de un producto de software para las necesidades de los
Stakeholders, aplicando un lenguaje de modelado como UML y un proceso de desarrollo en la herramienta IBM RSA; definiendo la
Visión del Negocio, modelo de casos de Uso y prototipos visuales.

https://silbia.lacafetalab.pe/syllabuses/export/654.html 1/6
22/3/2019 100000S03I_DisenoYArquitecturaDeSoftware

Temario:

Introducción al diseño y la arquitectura de software.


Estado del Arte de la Arquitectura de Software.
Contexto del diseño en múltiples ciclos de vida del desarrollo de software.
Mejores Prácticas de la Ing. de
Software.
Proceso de desarrollo.
Documento de Visión.
Principios y procesos en las arquitecturas de software.
Principios del Diseño.
Acoplamiento y cohesión.
Conceptos de Orientación a Objetos.
Requerimientos de Software.
Documento Especificación
De requerimientos de software (SRS).
Diagramas UML orientados a la arquitectura de software.
Modelo de Casos de Uso.
Modelo del Dominio.
Diagramas de Componentes.
Diagramas de Despliegue.
Visión de Arquitecturas de software existente.
Arquitecturas Cliente Servidor.
Arquitecturas Distribuidas.
Arquitecturas MVC.
Arquitecturas SOA.
Arquitecturas REST.
Arquitecturas Cloud Computing.

Unidad de aprendizaje 2: Semana 5,6,7,8 y 9


Diseño de Arquitecturas de Software.

Logro específico de aprendizaje:


Al finalizar la segunda unidad, el estudiante diseña la arquitectura de un producto de software, haciendo uso de patrones
arquitectónicos, elementos del modelo de diseño, clases de diseño, subsistemas, interfaces en la herramienta IBM RSA; cumpliendo con
los requerimientos fundamentales del software a construir.

Temario:

Análisis de la arquitectura de software.


Análisis de Arquitecturas de Software.
Patrones Arquitectónicos.
Análisis de arquitecturas centradas en casos de uso.
Diseño de la arquitectura de software.
Elementos de Diseño.
Mecanismos de Diseño.
Patrones de Diseño.
Arquitecturas de software en Tiempo de Ejecución.
Modelo de distribución.
Diagramas de Interacción.
Diagramas de Componentes.
Diagramas de Despliegue.
GUI’s.
Patrones y Antipatrones en las arquitecturas de software.
Optimización de caché. Wrappers.
Inversión de control e Inyección de Dependencias.
Programación Orientada a Aspectos.
Balanceo de carga.
Frameworks.
Método ADD (Attribute Driven Design).
Análisis y Diseño de patrones arquitectónicos de software.
Tácticas para el diseño de Arquitecturas de software.
Modelos de diseño.
Diagramas de secuencia de Diseño arquitectónico.

Unidad de aprendizaje 3: Semana 10,11,12,13,14,15,16,17 y 18


Diseño detallado de Arquitecturas de Software.

Logro específico de aprendizaje:


Al finalizar la tercera unidad, el estudiante diseña componentes y clases de software; haciendo uso de la herramienta IBM RSA,
patrones de diseño que garanticen la integración, en el marco de una arquitectura definida¸ cumpliendo con los requerimientos
fundamentales del software a construir.

https://silbia.lacafetalab.pe/syllabuses/export/654.html 2/6
22/3/2019 100000S03I_DisenoYArquitecturaDeSoftware

Temario:

Análisis Detallado y Diseño Detallado de Arquitecturas de software.


Diseño de Subsistemas.
Diagramas de subsistemas.
Diseño Arquitectónico basado en UML para subsistemas.
Diseño de Clases y Sub Clases.
Diagramas de Clases.
Diseño Arquitectónico basado en UML para la integración de subsistemas.
Atributos y Subatributos de Calidad de Software.
Contratos de Servicios.
Diseño Arquitectónico basado en UML para subsistemas en SOA.
Protocolos SOA.
Orquestación y Coreografía de servicios web.
Diagramas de Componentes para SOA.
Diagramas de Despliegue para SOA.
Diseño Arquitectónico basado en UML para subsistemas en Arquitecturas para software de dispositivos móviles.
Protocolos para software para dispositivos móviles.
Diagramas de Componentes para REST.
Diagramas de Despliegue para REST.
Arquitecturas Cloud Computing para software en dispositivos móviles.
Herramienta IBM RSA
Generación de Arquitecturas de servicios utilizando Azure SAS.
Examen Final

6. METODOLOGÍA
Se dictarán clases teóricas con desarrollo de exposiciones y la participación activa de los estudiantes mediante la realización de
experiencias de laboratorio. Para ello, se facilitarán guías de laboratorio y separatas de problemas para resolver según cada
grupo.
Los principios de aprendizaje que se promueven en este curso son:
• Aprendizaje autónomo.
• Aprendizaje colaborativo.

7. SISTEMA DE EVALUACIÓN
El cálculo del promedio final se hará de la siguiente manera:

(20%)PC1 + (20%)PC2 + (30%)PC3 + (30%)EXIF

Donde:

Tipo Descripción Semana Observación

PC1 PRACTICA CALIFICADA 1 5 practica calificada 1

PC2 PRACTICA CALIFICADA 2 10 practica calificada 2

PC3 PRACTICA CALIFICADA 3 15 practica calificada 3

EXIF EXAMEN FINAL INDIVIDUAL 18 examen final individual

Indicaciones sobre Fórmulas de Evaluación:

1. La evaluación será permanente y se realizará por medio de prácticas al final de cada unidad.
2. Sólo se podrá rezagar el Examen Final.
3. El examen rezagado incluye los contenidos de todo el curso.
4. No se elimina ninguna práctica calificada.
5. La nota mínima aprobatoria es 12 (doce).
6. En el caso de que un alumno no rinda una práctica calificada (PC) y, por lo tanto, obtenga NS, esta es reemplazada con la
nota que se obtenga en el examen final o de rezagado. En caso de que el alumno tenga más de una práctica calificada no
rendida, solo se reemplaza la práctica calificada de mayor peso.
7. No es necesario que el alumno realice trámite alguno para que este remplazo se realice.

8. FUENTES DE INFORMACIÓN

Bibliografía Base:

CERVANTES MACEDA, HUMBERTO (2016) Arquitectura de software, Addison Wesley Longman. Pearson
PANTALEO, GUILLERMO (2015) Ingeniería de software, Cengage Learning

Bibliografía Complementaria:

https://silbia.lacafetalab.pe/syllabuses/export/654.html 3/6
22/3/2019 100000S03I_DisenoYArquitecturaDeSoftware

PRESSMAN, ROGER S. Ingeniería del software


MARTIN, ROBERT C. Clean Architecture
LEN SILVERSTON, PAUL AGNEW The Data Model Resource Book

9. CRONOGRAMA DE ACTIVIDADES

Actividades y
Unidad de aprendizaje Semana Sesión Tema
evaluaciones

Introducción al diseño y la arquitectura de


software. Prueba de Entrada
Estado del Arte de la Arquitectura de Software. Analiza documentos
Contexto del diseño en múltiples ciclos de vida referentes al Diseño en
1 1 del desarrollo de software. la Ingeniería de
Mejores Prácticas de la Ing. de Software.
Software.
Proceso de desarrollo.
Documento de Visión.

Principios y procesos en las arquitecturas de


software. Elabora una descripción
Principios del Diseño. global del sistema,
Acoplamiento y cohesión. especifica
Conceptos de Orientación a Objetos. requerimientos
Requerimientos de Software. funcionales y no
Documento Especificación funcionales del sistema
2 2 De requerimientos de software (SRS). en herramienta IBM
RSA. Desarrolla en
equipo documento de
Visión y SRS de un caso
Unidad 1 práctico en la
Introducción a la Arquitectura herramienta IBM RSA en
de Software laboratorio.

Diagramas UML orientados a la arquitectura de


software. Elabora el modelado
Modelo de Casos de Uso. arquitectura centrado en
Modelo del Dominio. casos de uso, un modelo
Diagramas de Componentes. de dominio, diagramas
3 3 Diagramas de Despliegue. de componentes
diagramas de
despliegue utilizando la
herramienta IBM RSA en
laboratorio.

Visión de Arquitecturas de software existente.


Arquitecturas Cliente Servidor. Elabora una arquitectura
Arquitecturas Distribuidas. cliente servidor
4 4 Arquitecturas MVC.
Arquitecturas SOA.
Arquitecturas REST.
Arquitecturas Cloud Computing.

Unidad 2 Análisis de la arquitectura de software.


Diseño de Arquitecturas de Análisis de Arquitecturas de Software. Practica Calificada 1
Software Patrones Arquitectónicos. (Practica Calificada 1)
Análisis de arquitecturas centradas en casos de Identificación de
uso. paquetes por capas,
existiendo trazabilidad
5 5
entre el modelo de
diseño y el modelo de
implementación usando
la herramienta IBM RSA
en laboratorio.

Diseño de la arquitectura de software.


Elementos de Diseño. Establece la relación
Mecanismos de Diseño. entre especificación de
Patrones de Diseño. Casos de Uso y las
6 6
operaciones del sistema,
existiendo trazabilidad
entre ellos.

https://silbia.lacafetalab.pe/syllabuses/export/654.html 4/6
22/3/2019 100000S03I_DisenoYArquitecturaDeSoftware

Arquitecturas de software en Tiempo de


Ejecución. Desarrolla una
Modelo de distribución. Estructura de Diagramas
Diagramas de Interacción. de interacción, de
Diagramas de Componentes. componentes y de
Diagramas de Despliegue. despliegue existiendo
7 7
GUI’s. trazabilidad entre las
Especificaciones de
casos de uso modelo de
análisis y prototipos de
las GUI’s.

Patrones y Antipatrones en las arquitecturas de


software. Elabora programas
Optimización de caché. Wrappers. orientados a aspectos y
Inversión de control e Inyección de balance de cargas.
8 8 Dependencias.
Programación Orientada a Aspectos.
Balanceo de carga.
Frameworks.
Método ADD (Attribute Driven Design).

Análisis y Diseño de patrones arquitectónicos


de software. Elabora un diagrama de
Tácticas para el diseño de Arquitecturas de secuencia de diseño
software. para un caso de uso de
Modelos de diseño. un problema planteado.
9 9
Diagramas de secuencia de Diseño Utiliza la herramienta
arquitectónico. IBM RSA para elaborar
diagramas de
interacción.

Unidad 3 Análisis Detallado y Diseño Detallado de


Diseño detallado de Arquitecturas de software. Practica Calificada 2
Arquitecturas de Software Diseño de Subsistemas. (Practica Calificada 2)
Diagramas de subsistemas. Presenta la
estructuración de los
subsistemas, existiendo
trazabilidad entre el
10 10
modelo de análisis, el
modelo de diseño
propuesto y la
implementación del
mismo. Utiliza la
herramienta IBM RSA

Diseño Arquitectónico basado en UML para


subsistemas. Desarrolla criterios del
Diseño de Clases y Sub Clases. diseño de las clases
Diagramas de Clases. para casos de uso,
especificando los
parámetros, reglas,
11 11 condiciones usando la
misma sintaxis del
lenguaje de
programación
seleccionado. Utiliza la
herramienta IBM RSA.

Diseño Arquitectónico basado en UML para la


integración de subsistemas. Diseña una arquitectura
12 12 Atributos y Subatributos de Calidad de basado en UML para
Software. integrar subsistemas.
Contratos de Servicios.

Diseño Arquitectónico basado en UML para


subsistemas en SOA. Elabora un diagrama de
Protocolos SOA. componentes y un
Orquestación y Coreografía de servicios web. diagrama de despliegue
13 13 Diagramas de Componentes para SOA. para SOA. Utiliza la
Diagramas de Despliegue para SOA. herramienta IBM RSA
para elaborar los
diagramas.

https://silbia.lacafetalab.pe/syllabuses/export/654.html 5/6
22/3/2019 100000S03I_DisenoYArquitecturaDeSoftware

Diseño Arquitectónico basado en UML para


subsistemas en Arquitecturas para software de Elabora un diagrama de
dispositivos móviles. componentes y un
14 14 Protocolos para software para dispositivos diagrama de despliegue
móviles. para arquitecturas
Diagramas de Componentes para REST. REST.
Diagramas de Despliegue para REST.

Arquitecturas Cloud Computing para software


en dispositivos móviles. Practica Calificada 3
(Practica Calificada 3)
Elabora un diagrama de
15 15 componentes y un
diagrama de despliegue
para arquitecturas Cloud
Computing.

Herramienta IBM RSA


Utiliza la herramienta
16 16 IBM RSA para elaborar
los diagramas.

Generación de Arquitecturas de servicios


utilizando Azure SAS. Gestiona las diversas
funcionalidades SAS en
17 17 un ambiente Azure
utilizando máquinas
virtuales

Examen Final
Examen Final Individual
18 18 (Examen Final
Individual)

https://silbia.lacafetalab.pe/syllabuses/export/654.html 6/6

También podría gustarte