Está en la página 1de 6

UNIVERSIDAD CHAMPAGNAT

FACULTAD DE INFORMATICA Y DISEÑO

Carrera: Licenciatura en Sistemas de Información

Cátedra: Arquitecturas de sistemas


Ingeniería de Software, Bases de Datos y
Área:
Sistemas de Información
Carácter: Obligatoria
Segundo
Año: Cuarto Régimen: Semestral Cursado:
semestre
Carga Horaria Total: 90 hs Carga Horaria Semanal: 6 hs.
Carga horaria total de
60 hs. Carga Horaria Semanal: 4 hs.
actividades teóricas
Carga horaria total de
30hs. Carga Horaria Semanal: 2 hs.
actividades prácticas
Correlativas Precedentes: Sistemas Operativos II, Redes II, Ingeniería de software III, Bases de datos III

Profesor/es: Lic. Marcelo Palma

Ciclo Académico:

FUNDAMENTACIÓN
Arquitectura de Sistemas es una materia integradora de la carrera Licenciatura en Sistemas de
Información y tiene como objetivo acercar al alumno a las actividades propias de su profesión
con el propósito de aportar a la formación de un profesional capaz de analizar, evaluar y
diseñar Arquitecturas de software, al servicio de múltiples necesidades de información, de
organizaciones y de todas las profesiones con las que deberá interactuar.
Una arquitectura de software describe los subsistemas que componen al sistema, las
interfaces y las reglas de interacción entre ellas. El desarrollo de una arquitectura de un
sistema es importante porque facilita la comunicación entre los interesados (stakeholders),
promueve la formación de consensos, favorece la administración del proceso de desarrollo de
software, ayuda a administrar la complejidad, soporta análisis de impacto, posibilita conocer
las decisiones de diseño en etapas tempranas y promueve la reutilización a gran escala. La
arquitectura de software afecta el desempeño, la seguridad, la mantenibilidad de los sistemas
de software. El desarrollo de una arquitectura no es una tarea sencilla porque implica la
internalización de nuevos conceptos tales como estructuras y vistas arquitectónicas, patrones
arquitectónicos, etc. y su consecuente transferencia a situaciones prácticas. Además de
conocer los fundamentos del diseño y elaboración de una arquitectura de software también es
muy importante entender los atributos de calidad (interoperabilidad, modificabilidad,
desempeño, seguridad, etc.) que debe poseer una arquitectura de forma tal que posibilite la
evaluación al momento de su construcción, o bien analizar la calidad de la arquitectura de
sistemas construidos para que, a través de procesos de reingeniería, se puedan corregir
errores o mejorar su calidad mediante transformaciones.

OBJETIVOS
• Adquirir conocimientos específicos sobre Arquitecturas de Sistemas, con una visión de
conjunto lo más estructurada posible
• Establecer el papel de esta disciplina en relación con las estrategias arquitectónicas
empresariales, sus herramientas, sus patrones de diseño, y las tecnologías que le brindan
apoyo.
• Integrar todos los conocimientos adquiridos sobre Ingeniería de software e
implementarlos en un Proyecto de Desarrollo de Software.

CONTENIDOS

Unidad I: Arquitecturas de sistemas


1. Atributos de Calidad. Conceptualización de Arquitectura de Software. Reseña Histórica de la
Arquitectura de Software. El rol del arquitecto de software. Definiciones de Arquitectura de
Software. Arquitectura y Diseño: diferencias. Importancia de la Arquitectura de Software.
Áreas vinculadas a la Arquitectura de Software. Conceptos Arquitectónicos Fundamentales.
2. La Arquitectura Lógica. La Arquitectura de Procesos. La Arquitectura de Desarrollo. La
Arquitectura Física. Ejemplos de Diseño Arquitectónico. Definición del problema. Solicitud.
Solución. Análisis de la Solución.

Bibliografía:
• Software Architecture. Perspective on an Emerging Discipline. Mary Shaw, David Garlan. Prentice
Hall 1996.
• Software Architecture in Practice (SEI Series in Software Engineering). Bass, L., Clements, P.,
Kasman, R., Bass, K. 3ra. ed. Addison-Wesley Pub Co; 2012.
• Documenting Software Architectures: Views and Beyond. Clements, P. et al. 2da. ed. Addison-
Wesley, 2010.
• Evaluating Software Architectures: Methods and Case Studies. Clements, P. et al. 1ra. ed.
Addison-Wesley.
• Pattern-Oriented Software Architecture. A System of Patterns. F. Buschman et al. New York,
John Wiley and Sons, 1996.
• Pattern-Oriented Software Architecture. Patterns for Concurrent and Networked Objects.
Volumen 2. Douglas Schmith, Michael Stal, Hans Rohnert, Frank Buschman. John Wiley and Sons,
2000.

Unidad II: Estilos y patrones


1. Estilos Arquitectónicos. Definiciones de estilo. Catálogos de estilos. Tubería y filtros. Pizarra o
Repositorio. Patrones. Model-View- Controller (MVC). Arquitecturas en Capas. Arquitecturas
Orientadas a Objetos. Arquitecturas Basadas en Componentes. Arquitectura de Máquinas
Virtuales. Sistemas de control de procesos. Estilos Peer-to-Peer. Arquitecturas Basadas en
Eventos. Arquitecturas Orientadas a Servicios (SOA). Arquitecturas Basadas en Recursos.
Arquitectura de la nube.
2. Sistemas de tiempo real, ingeniería de software de sistemas de tiempo real, nociones de
sistemas colaborativos, sistemas web, sistemas para plataformas móviles.
Bibliografía:
• Software Architecture. Perspective on an Emerging Discipline. Mary Shaw, David Garlan. Prentice
Hall 1996.
• Software Architecture in Practice (SEI Series in Software Engineering). Bass, L., Clements, P.,
Kasman, R., Bass, K. 3ra. ed. Addison-Wesley Pub Co; 2012.
• Documenting Software Architectures: Views and Beyond. Clements, P. et al. 2da. ed. Addison-
Wesley, 2010.
• Evaluating Software Architectures: Methods and Case Studies. Clements, P. et al. 1ra. ed.
Addison-Wesley.
• Pattern-Oriented Software Architecture. A System of Patterns. F. Buschman et al. New York,
John Wiley and Sons, 1996.
• Pattern-Oriented Software Architecture. Patterns for Concurrent and Networked Objects.
Volumen 2. Douglas Schmith, Michael Stal, Hans Rohnert, Frank Buschman. John Wiley and Sons,
2000.
• IEEE 1471 Recommended Practice for Architectural Description.
https://standards.ieee.org/findstds/standard/1471-2000.html
• The Worldwide Institute of Software Architects. http://www.wwisa.org/wwisamain/index.htm
• International Association of Software Architects. http://iasaglobal.org/
• Unified Modeling Language (UML). http://www.uml.org/
• Software Architecture Links. http://www.bredemeyer.com/links.htm
• Martin Fowler. GUI Architecture patterns. http://martinfowler.com/eaaDev/uiArchs.html

Unidad III: Arquitecturas orientadas a servicios


• Conceptualización. Relación entre SOA y los Servicios Web. Tecnologías que apoyan. Decisiones
Arquitectónicas.

Bibliografía
• Software Architecture. Perspective on an Emerging Discipline. Mary Shaw, David Garlan. Prentice
Hall 1996.
• Software Architecture in Practice (SEI Series in Software Engineering). Bass, L., Clements, P.,
Kasman, R., Bass, K. 3ra. ed. Addison-Wesley Pub Co; 2012.
• Documenting Software Architectures: Views and Beyond. Clements, P. et al. 2da. ed. Addison-
Wesley, 2010.
• Evaluating Software Architectures: Methods and Case Studies. Clements, P. et al. 1ra. ed.
Addison-Wesley.
• Pattern-Oriented Software Architecture. A System of Patterns. F. Buschman et al. New York,
John Wiley and Sons, 1996.
• Pattern-Oriented Software Architecture. Patterns for Concurrent and Networked Objects.
Volumen 2. Douglas Schmith, Michael Stal, Hans Rohnert, Frank Buschman. John Wiley and Sons,
2000.

Unidad IV: Ingeniería reversa para la recuperación de la arquitectura de sistemas


1. Conceptos, Procesos y Herramientas. Ingeniería Reversa: Conceptualización. Proceso de
Ingeniería Reversa, Aplicaciones de la Ingeniería Reversa. Herramientas de Ingeniería Reversa.
Modelos Cognitivos. Métodos ad-hoc de extracción de Información desde los Sistemas de
Software. Visualización de Software: Conceptualización. Herramientas. Reingeniería de Software.
2. Métodos de Extracción de la Información Estática. Análisis Estático: Conceptualización. Métodos
para la Extracción de Información Estática. Representaciones de Software basadas en
Información Estática. Herramientas para la Construcción de Extractores de Información Estática.
3. Métodos de Extracción de la Información Dinámica. Análisis Dinámico: Conceptualización.
Métodos para la Extracción de Información Dinámica. Representaciones de Software basadas en
Información Dinámica. Herramientas para la Construcción de Extractores de Información
Dinámica.

Bibliografía
• Software Architecture. Perspective on an Emerging Discipline. Mary Shaw, David Garlan. Prentice
Hall 1996.
• Software Architecture in Practice (SEI Series in Software Engineering). Bass, L., Clements, P.,
Kasman, R., Bass, K. 3ra. ed. Addison-Wesley Pub Co; 2012.
• Documenting Software Architectures: Views and Beyond. Clements, P. et al. 2da. ed. Addison-
Wesley, 2010.
• Evaluating Software Architectures: Methods and Case Studies. Clements, P. et al. 1ra. ed.
Addison-Wesley.
• Pattern-Oriented Software Architecture. A System of Patterns. F. Buschman et al. New York,
John Wiley and Sons, 1996.
• Pattern-Oriented Software Architecture. Patterns for Concurrent and Networked Objects.
Volumen 2. Douglas Schmith, Michael Stal, Hans Rohnert, Frank Buschman. John Wiley and Sons,
2000.
• Eilam, E. Reversing. Secrets of Reverse Engineering. Wiley. ISBN-10: 0764574817, ISBN-13: 978-
0764574818. 2005.
• Dang, B; Gazet, A; Bachaalny, E. Practical Reverse Engineering. Wiley. ISBN: 978-1- 118-78731- 1.
2014.

METODOLOGÍA DE ENSEÑANZA

• El desarrollo de las actividades se realizará mediante sesiones expositivas. Los alumnos


trabajarán con el material preparado por el docente, la bibliografía definida y con textos o
artículos de discusión publicados en congresos y diversos ámbitos académicos sobre los
contenidos temáticos de la asignatura.
• Se conformarán equipos de trabajo que desarrollarán Prácticas de Arquitectura a lo largo
de la materia y deberán defenderla en forma individual al finalizar la materia.
• La explicación de los temas se realizará usando herramientas multimediales y de trabajo en
grupo mediante red de computadoras.
• Los temas teóricos serán adaptados y aplicados en la Implementación de un Proyecto de
Desarrollo de Software Orientado a Objetos (en sus etapas de análisis y diseño), basado en
una Definición de Requerimientos concreta y real, usando UML y siguiendo un proceso de
desarrollo iterativo e incremental.
• Se utilizarán textos especializados (provistos o referenciados oportunamente y/o
seleccionados por el alumno de acuerdo a los criterios establecidos por la cátedra)
durante el desarrollo del proyecto.
• Las Exposiciones serán grupales con la síntesis de un tema o con las conclusiones
resultantes de una fase del proceso.
• Se utilizará el Laboratorio de Informática para las prácticas propuestas.
ACTIVIDADES TEÓRICAS Y PRÁCTICAS

• Toma de apuntes, y participación en actividades áulicas y extra áulicas.


• Lectura y desarrollo de guías de análisis de la bibliografía obligatoria y opcional
recomendada en la materia.
• Resolución de problemas y/o casos de estudio.
• Búsqueda, evaluación de los contenidos seleccionados y documentación de los resultados
obtenidos para presentarlos en el formato definido por el profesor.
• Análisis en grupo de un caso práctico, confeccionando un informe y subiéndolo al aula
virtual en la fecha establecida.
• Implementación de una arquitectura en un Proyecto de Desarrollo de Software.
• Preparación de presentaciones para exposición ante un público reducido.

MATERIALES DIDÁCTICOS:

• Pizarra, marcador.
• Proyector multimedia para la reproducción de videos explicativos y proyección
de filminas.
• Equipamiento técnico del laboratorio de informática.
• Plataforma: Campus Virtual http://campusvirtual.uch.edu.ar
• Bibliografía impresa de la materia existente en biblioteca.
• Material preparado por el docente.

EVALUACIÓN:

ü Requisitos:

La presente asignatura se aprueba con un examen final oral y/o escrito, previa regularidad de
la materia.

A la Evaluación Final el alumno regular debe presentarse con todas las Prácticas de Aprendizaje
aprobadas del semestre. Se evalúa todos los contenidos de la asignatura y se considera la
lectura de la Bibliografía detallada en el Programa.

Para alcanzar la regularidad de la materia, debe aprobar dos evaluaciones Parciales y/o un
Recuperatorio en fechas establecidas por la Universidad, con nota superior o igual a cuatro (4).
Puede rendir las evaluaciones parciales el alumno que haya entregado y aprobado las Prácticas
de Aprendizaje previas a cada parcial.

La Práctica de Aprendizaje no entregada en la fecha estipulada se considera desaprobada. La


aprobación de cada práctica de aprendizaje depende del logro de los objetivos planteados. Las
Prácticas de Aprendizaje desaprobadas tienen un único recuperatorio. Se puede recuperar
hasta un 50% de las mismas.

El requisito de asistencia se define de la siguiente manera: 75 % de asistencia para regularizar


la asignatura. Si tiene entre 50% y 74% de asistencia, el promedio de notas aprobadas no debe
ser inferior a 6 seis. En el caso que el porcentaje de asistencia sea menor al 50%, el estudiante
no obtiene la regularidad de la materia.
Es requisito para rendir cada una de las evaluaciones parciales contar con el porcentaje de
asistencia detallado en el párrafo anterior y con las prácticas de aprendizaje exigidas.

La nota de cada parcial estará formada por:

1. Respuesta a las preguntas del parcial escrito (70%)


2. Trabajos prácticos y/o guías de estudio y/o Proyecto de informe y exposición de
Resolución de problemas y/o casos de estudio. (20%)
3. Participación, asistencia y puntualidad en las clases (10%)

ü Criterios:

• Cumplimiento en tiempo y forma de todas las actividades programadas en la materia.


• Dominio de los conceptos teóricos sobre las unidades temáticas.
• Fundamentación del proyecto con los contenidos.
• Participación, asistencia y puntualidad en las clases.
• Capacidad de resolución de problemas y/o casos de estudio.
• Claridad y pertinencia en las exposiciones orales.

ü Instrumentos:

• Exámenes Parciales escritos.


• Trabajos prácticos y/o guías de estudio, grupales y/o individuales.
• Proyecto, informe y exposición de resolución de problemas y/o casos de estudio
• Observaciones y notas del profesor.

Firma del docente a cargo/ coordinador

También podría gustarte