Este documento presenta el syllabus de la asignatura "Arquitectura del Software" que se imparte en la Facultad de Ciencias Informáticas de la Universidad Técnica de Manabí. Describe los objetivos generales y específicos de la asignatura, la metodología de evaluación, el programa y la bibliografía recomendada. El propósito es transmitir conocimientos sobre el diseño y modelado de software según el paradigma de objetos para solucionar algoritmos y estructuras de datos.
Arquitectura del software UTM: clasificar estilos y patrones
1. UNIVERSIDAD TÉCNICA DE MANABÍ
SYLLABUS
Asignatura: Arquitectura del Software
1.-Datos Generales
Unidad Académica: Facultad de Ciencias Informáticas
Carrera: Ingeniería en Sistemas Informáticos
Ciclo Académico: Septiembre/2011 – Febrero/2011)
Nivel o Semestre: Cuarto Semestre
Área Curricular: Software
Tipo de Asignatura: Carrera
Código: OC-0400
Requisito para: Aplicaciones de Base de Datos OC-0501, Ingeniería de Software 1 OC-0700.
Pre-requisitos: Programación III OC-0300.
Co-requisitos: Base de Datos OC-0401.
N° de Créditos: 4
N° de Horas: 64
Docente Responsable: Ing. Cristian Palma Escobar
Correo Electrónico del
dloor@utm.edu.ec
Docente Responsable:
2.-Descripción de la asignatura
En la última década cambió la visión que los desarrolladores tenían acerca de la construcción de software. Esta nueva visión se
llamó "arquitectura". Desde los pequeños programas hasta los sistemas más grandes poseen una estructura y un comportamiento
que los hace clasificables. Este nuevo aspecto hace posible el estudio de sistemas en diferentes niveles de abstracción y la
funcionalidad de los mismos, manifestándose de forma clara en las distintas etapas del proceso de desarrollo de software. Por
estas razones es que la carrera incorpora esta materia a la malla curricular.
El propósito de esta asignatura es convertirse en una herramienta académica - metodológica para desarrollar destrezas y técnicas
de diseño y modelado de software, afianzando conocimientos básicos en el campo de la programación; además de categorizarse
como un aspecto relevante dentro de la creación de sistemas orientados a objetos actuales.
Inicia con la definición de conceptos fundamentales en el campo de la Arquitectura de Software como estilos, patrones; abordando
temas como estilos Arquitectónicos, Lenguajes de Descripción Arquitectónica, Modelos de Procesos y Diseños y finaliza con los
diagramas UML. Pone énfasis en los distintos Lenguajes de Descripción Arquitectónica (ADL`s), llegando a elaborar varios de los
diagramas UML, utilizando 2 tipos de herramientas distintas.
3.-Objetivo General de la asignatura
Transmitir conocimientos a los estudiantes sobre el diseño y modelado de software según el paradigma de objetos, para la
solución de algoritmos y estructuras de datos acordes a la computación moderna.
4.- Competencias Específicas del perfil del graduado
Planifica, analiza, diseña, desarrolla, implementa y administra proyectos informáticos orientados a los sistemas de producción,
financieros y administrativos; haciendo uso de la tecnología de punta, con estándares de calidad, promoviendo la generación de
empleo con innovación y creatividad; enfrentando los nuevos retos del mercado con espíritu emprendedor.
5.- Resultados del Aprendizaje
METODOLOGÍA DE EVALUACIÓN DE LOS RESULTADOS DE APRENDIZAJE
Resultados del
Método de Niveles del Resultado de
Aprendizaje Niveles Criterios Ponderación
Evaluación Aprendizaje
Documentar los Conocimiento Exposición Documentara 4 Documentara 4 unidades NIVEL ALTO
términos en formato unidades presentados en D.A.S.
fundamentales de presentados en el Completando 60 puntos aplicando
utilizados en el documentac D.A.S. aplicados a los términos básicos de
campo de la ión requisitos de arquitectura de software
Arquitectura del arquitectóni problemas resolviendo el problema
Software ca previamente presentado por parte del docente.
establecidos en el establecidos por
documento de el docente y que Documentara 4 unidades NIVEL MEDIO
arquitectura de se aplican a los presentados en D.A.S.
software términos básicos Completando 50 puntos aplicando
de arquitectura los términos básicos de
de software arquitectura de software
resolviendo el problema
presentado por parte del docente.
ARQUITECTURA DEL SOFTWARE Página 1
2. Documentara 4 unidades NIVEL BASICO
presentados en D.A.S.
Completando 30 puntos aplicando
los términos básicos de
arquitectura de software
resolviendo el problema presentado
por parte del docente.
Clasificar los estilos Aplicación Organizador Clasificación de 6 Clasificará 6 estilos arquitectónicos NIVEL ALTO
arquitectónicos Análisis gráfico estilos utilizando organizadores gráficos
considerando las arquitectónicos considerando las alternativas
alternativas Consideración de estilísticas, la identificación de los
estilísticas que las alternativas diferentes paradigmas de diseño
ocurren en los estilísticas del software y la clasificación de 3
diferentes Identificación de estilos arquitectónicos
paradigmas del los diferentes considerando los estilos que
diseño del software paradigmas de contemplan alguna forma de
diseño del distribución o topología de red.
software.
Clasificación de 3 Clasificará utilizando organizadores NIVEL MEDIO
estilos gráficos 5 estilos arquitectónicos
arquitectónicos considerando las alternativas
considerando los estilísticas, la identificación de los
estilos que diferentes paradigmas de diseño
contemplan del software y la clasificación de 2
alguna forma de estilos arquitectónicos
distribución o considerando los estilos que
topología de red. contemplan alguna forma de
distribución o topología de red.
Clasificará utilizando organizadores NIVEL BASICO
gráficos 4 estilos arquitectónicos
considerando las alternativas
estilísticas, la identificación de los
diferentes paradigmas de diseño
del software y la clasificación de 1
estilos arquitectónicos
considerando los estilos que
contemplan alguna forma de
distribución o topología de red.
Categorizar los Análisis Organizador Categorización de Categorizará 5 Patrones de diseño NIVEL ALTO
patrones Síntesis gráfico 5 patrones fundamentales de la Arquitectura
fundamentales de la Evaluación fundamentales de del Software, identificando 5
Arquitectura de la Arquitectura elementos comunes de los patrones
Software en función del Software. y 5 herramientas afines a los
de los elementos Identificación de 5 patrones.
comunes de su elementos
filosofía, comunes de los Categorizará 3 Patrones de diseño NIVEL MEDIO
herramientas patrones. fundamentales de la Arquitectura
gráficas afines y su Identificación de 5 del Software, identificando 3
capacidad para herramientas elementos comunes de los Patrones
generar código afines a los de diseño identificando 3
ejecutable. patrones. herramientas afines a los Patrones
de diseño.
Categorizará 2 Patrones de diseño NIVEL BASICO
fundamentales de la Arquitectura
del Software, identificando 2
elementos comunes de los Patrones
de diseño identificacando 2
herramientas afines a los Patrones
de diseño.
Explicar las Análisis Ensayo Explicación de 3 Explicará en un ensayo técnico 3 NIVEL ALTO
similitudes y Síntesis Técnico metodologías de metodologías de desarrollo agiles y
contrariedades Evaluación desarrollo agiles y 3 metodologías tradicionales
existentes entre 3 metodologías basados en los beneficios de
ARQUITECTURA DEL SOFTWARE Página 2
3. métodos agiles y tradicionales. rapidez, seguridad y funcionalidad
métodos que tengan.
tradicionales de
desarrollo de Explicará en un ensayo técnico 2 NIVEL MEDIO
software basados en metodologías de desarrollo agiles y
los beneficios de 2 metodologías tradicionales
rapidez, seguridad y basados en los beneficios de
funcionalidad que rapidez, seguridad y funcionalidad
presenten. que tengan.
Explicará en un ensayo técnico 1 NIVEL BASICO
metodología de desarrollo ágil y 1
metodología tradicionales basados
en los beneficios de rapidez,
seguridad y funcionalidad que
tengan.
Elaborar Diagramas Aplicación Ejercicios en Elaboración de 7 Elaborará 7 diagramas UML NIVEL ALTO
UML utilizando el diagramas UML utilizando herramientas.
herramientas e computador utilizando Identificará 7 tipos de diagramas
identificando los herramientas. UML, manejará 2 herramientas
diferentes tipos de Identificación de 7 UML
diagramas UML tipos de
diagramas UML Elaborará 5 diagramas UML NIVEL MEDIO
Manejo de 2 utilizando herramientas.
herramientas Identificará 7 tipos de diagramas
UML. UML, manejará 2 herramientas
UML
Elaborará 3 diagramas UML NIVEL BASICO
utilizando herramientas.
Identificará 7 tipos de diagramas
UML, manejará 2 herramientas
UML
6.- Programación
1. Resultado del Aprendizaje Nº 1: Documentara los términos fundamentales utilizados en el campo de la Arquitectura del
Software establecidos en el documento de arquitectura de software D.A.S.
No. de Estrategias Bibliografía
Fechas Temas Recursos
Horas metodológicas
UNIDAD 1 Experiencia: Internet [GS94] David Garlan y Mary
2 ARQUITECTURA DEL Lectura sobre el Pizarra de tiza Shaw. "An introduction to
SOFTWARE tema liquida. software architecture". CMU
Introducción a la materia, Formulación de Laboratorio de Software Engineering
fundamentos. preguntas de los Computación Institute
Antecedentes históricos. estudiantes. Aula con
Conceptos fundamentales. Conceptualización: Proyector Technical Report, CMU/SEI-
Trabajos en grupos Digital 94-TR-21, ESC-TR-94-21,
2 Campos de la Arquitectura de para la elaboración Marcadores 1994.
Software. de los conceptos.
Diferencias entre Reflexión: [Platt02] Michael Platt.
Arquitectura y Diseño. Exposición "Microsoft Architecture
Plenaria Overview: Executive
Estudio de términos Consensos summary",
2 arquitectónicos Aplicación:
Presentación del problema a Documentara los http://msdn.microsoft.com/a
resolver y definición de los términos rchitecture/default.aspx?pull
grupos fundamentales =/library/en-
utilizados en el us/dnea/html/eaarchover.as
campo de la p, 2002.
Arquitectura del
Software plasmados
en el D.A.S.
ARQUITECTURA DEL SOFTWARE Página 3
4. 2. Resultado del Aprendizaje Nº 2: Clasificar los estilos arquitectónicos considerando las alternativas estilísticas que ocurren en los
diferentes paradigmas del diseño del software.
No. de Estrategias Bibliografía
Fechas Temas Recursos
Horas metodológicas
UNIDAD 2 Experiencia: Internet
12 ESTILOS ARQUITECTONICOS Lectura sobre el Pizarra de tiza Streamlined Object Modeling
Introducción a los estilos tema, construcción liquida. – Patterns, rules and
arquitectónicos de ejemplos reales a Laboratorio de implementations, Jill Nicola
Estilos arquitectónico: partir de la teoría. Computación et. al., PHPTR, 2002.
Basados en flujos de datos Formulación de Aula con
Centrados en Datos preguntas de los Proyector Analysis Patterns, Martin
Código Móvil estudiantes. Digital Fowler, 1997.
Peer to Peer Conceptualización: Marcadores
Estilos de llamada y retorno Trabajos en grupos Domain Driven Design, Eric
Estilos heterogéneos para la elaboración Evans, Addison-Wesley, 2004.
de los conceptos.
Reflexión: Object-Oriented Analysis and
Exposición Design with Applications (2nd
Plenaria Edition), Grady Booch, 1994.
Consensos
Aplicación:
Clasificar los estilos
arquitectónicos
considerando las
alternativas
estilísticas que
ocurren en los
diferentes
paradigmas del
diseño del software.
3. Resultado del Aprendizaje Nº 3: Categorizar los patrones fundamentales de la Arquitectura de Software en función de los
elementos comunes de su filosofía, herramientas gráficas afines y su capacidad para generar código ejecutable.
No. de Estrategias Bibliografía
Fechas Temas Recursos
Horas metodológicas
UNIDAD 3 Experiencia: Internet Design Patterns. Elements of
12 PATRONES DE DISEÑO Lectura sobre el Pizarra de tiza Reusable Object-Oriented
ARQUITECTONICO tema liquida. Software - Erich Gamma,
Patrones en Presentación de Laboratorio de Richard Helm, Ralph Johnson,
Arquitectura ejemplos prácticos Computación John Vlissides - Addison
Objetivos Formulación de Aula con Wesley
Categorias preguntas de los Proyector
Estructuras estudiantes. Digital Pressman Roger, Ingenieria
th
Patrones Conceptualización: Marcadores del software 6 edicion –
creacionales Trabajos en grupos McGraw-Hill, pag. 254 – 280
Patrones para la elaboración
estructurales de los conceptos.
Patrones de Reflexión:
comportamiento Exposición
Patrones de Plenaria
interacción Consensos
Aplicación en Aplicación:
ámbitos concretos Categorizara los
patrones
arquitectónicos
según elementos
comunes de su
filosofía.
4. Resultado del Aprendizaje Nº 4: Explicar las similitudes y contrariedades existentes entre métodos agiles y métodos
tradicionales de desarrollo de software basados en los beneficios de rapidez, seguridad y funcionalidad que presenten.
No. de Estrategias Bibliografía
Fechas Temas Recursos
Horas metodológicas
UNIDAD 4 Experiencia: Internet Pressman Roger, Ingenieria
th
12 ANALISIS DE METODOLOGIAS Lectura sobre el Pizarra de tiza del software 6 edicion –
DE DESARROLLO tema liquida. McGraw-Hill, pag. 77
ARQUITECTONICO DE Formulación de Laboratorio de
ARQUITECTURA DEL SOFTWARE Página 4
5. SOFTWARE preguntas de los Computación Carlos Billy Reinoso, Metodos
Metodos Agiles estudiantes. Aula con heterodoxos en Desarrollo de
Extreme programming(xp) Conceptualización: Proyector software (pdf)
Scrum Trabajos en grupos Digital
Crystal Methods para la elaboración Marcadores
Rational Unified Process de los conceptos.
Dynamic Systems Reflexión:
Development Method Exposición
Agile Modeling Plenaria
Metodologia Tradicional Consensos
Cascada o lineal Aplicación:
Prototype Explicar las
Espiral similitudes y
contrariedades
existentes entre
métodos agiles y
métodos
tradicionales de
desarrollo de
software basados
en los beneficios de
rapidez, seguridad y
funcionalidad que
presenten.
5. Resultado del Aprendizaje Nº 5: Elaborar Diagramas UML utilizando herramientas e identificando los diferentes tipos de
diagramas UML.
No. de Estrategias Bibliografía
Fechas Temas Recursos
Horas metodológicas
UNIDAD 5 Experiencia: Internet UML Y PATRONES
22 Diagramación de procesos en Lectura sobre el Pizarra de tiza introducción al análisis y
UML tema liquida. diseño orientado a objetos,
Introducción a un proceso de Formulación de Laboratorio de Craig Larman, Prentice Hall –
desarrollo preguntas de los Computación Adisson Wessley – Pearson
Herramientas UML estudiantes. Aula con
Definición de Modelos y Conceptualización: Proyector Aprendiendo UML en 24
Artefactos Trabajos en grupos Digital horas, Joseph Schmuller,
Descripción de procesos en para la elaboración Marcadores Prentice Hall
casos de usos de los conceptos.
Construcción de un modelo Reflexión: El lenguaje Unificado de
conceptual y agregación de Exposición Modelado. Manual de
las asociaciones y atributos Plenaria referencia, James Rumbaugh
Diagrama de secuencia del Consensos - Ivar Jacobson - Grady
sistema Aplicación: Booch, Addison Wesley
Diagramas de colaboración Elaborar diagramas
Diseño de una solución con UML identificando
objetos y patrones el correcto uso para
casos reales
impartidos por el
docente.
ARQUITECTURA DEL SOFTWARE Página 5
6. 7.- Compromisos Disciplinarios y Éticos
Asistencia y Puntualidad
La asistencia es obligatoria a todas las actividades programadas en esta asignatura.
El estudiante ingresará a clases a la hora establecida, y solo en una ocasión se aceptará el retraso de 10 minutos.
El docente asistirá igualmente con toda puntualidad a las actividades establecidas a los estudiantes esperarán 10 minutos
después de la hora de inicio, en caso de que el docente no se hubiera comunicado con el representante del curso en este lapso
los estudiantes se retirarán y el docente tiene la obligación de recuperar estas horas.
El estudiante deberá presentar justificar al docente su inasistencia o atraso, independientemente de la justificación
reglamentaria.
El estudiante por ningún concepto utilizará los celulares en el aula, igual comportamiento tendrá el docente.
En caso de emergencia el estudiante solicitará al docente el respectivo permiso para el uso de celular.
El intento de copia de cualquier estudiante será sancionado con la calificación de cero y no habrá oportunidad de recuperación
independiente de las sanciones establecidas por la universidad.
Los trabajos se entregarán en la fecha establecida y no se recibirá en otra oportunidad. No se aceptará una segunda
oportunidad para la entrega de trabajos.
El estudiante ingresará al aula sin gorra y no consumirá alimentos dentro del aula.
El trabajo escrito será realizado con las propias palabras e ideas del estudiante. Si se descubre la copia textual de un párrafo en
un texto se calificará con cero.
8.-Parametros para la Evaluación de los Aprendizajes
ACTIVIDADES VARIAS 40% Exámenes
Investigación
10% Parciales Total
30% Trabajo de 100%
Participación Responsabilidad 30% 30%
grupo
EVALUACION DE Se consideran los
RESULTADOS DE resultados de
APRENDIZAJES aprendizajes
Actividades varias 40%:
Trabajo de Investigación 30%
Exámenes Parciales 30%
La evaluación de los resultados de aprendizaje debe considerarse en el porcentaje del 40% de actividades varias.
9.- Bibliografía Complementaria
UML Y PATRONES introducción al análisis y diseño orientado a objetos, Craig Larman, Prentice Hall – Adisson Wessley – Pearson
Aprendiendo UML en 24 horas, Joseph Schmuller, Prentice Hall
El lenguaje Unificado de Modelado. Manual de referencia, James Rumbaugh - Ivar Jacobson - Grady Booch, Addison Wesley
Pressman Roger, Ingenieria del software 6th edición, McGraw-Hill
10.- Revisión y Aprobación
PRESIDENTE (A) COMISIÓN ACADÉMICA
DOCENTE RESPONSABLE DIRECTOR (A) DE CARRERA
Firma: Firma: Firma:
Fecha: Fecha: Fecha:
ARQUITECTURA DEL SOFTWARE Página 6