/2019-02

Repositorio principal del curso IIC2173

IIC2173 — Arquitectura de Sistemas de software

Tabla de contenidos


Equipo

Profesor

Nombre GitHub Email
Hans Findel @hansfindel hjfindel@uc.cl

Ayudantes

Nombre GitHub Email
Nicolas Acosta @nacosta-cl nlacosta@ing.puc.cl
Alejandro Ramirez @Elramirezv123 elramirez@uc.cl
Ignacio Contreras @nachocontreras icontreras1@uc.cl

Objetivos

  • Tomar los requisitos para un sistema y desarrollar arquitecturas de software y diseños de alto nivel.
  • Diseñar software distribuido
  • Diseñar software usando componentes COTS (commercial off-the-shelf)
  • Aplicar frameworks y arquitecturas al diseñar una amplia variedad de software
  • Diseñar e implementar software usando tecnologías middleware

Contenidos

  • Modelado y diseño de software flexible al nivel arquitectónico
  • Fundamentos de arquitectura dirigida por modelos
  • Estilos y patrones arquitectónicos
  • Armazones (frameworks) para middleware y para aplicaciones
  • Diseño usando software comercial off-the-shelf (COTS)
  • Configuraciones y gestión de la configuración
  • Líneas de productos

Evaluación

El curso posee 3 tipos de evaluación

  • Interrogaciones y Examen acumulativo
  • Controles
  • Proyecto

Interrogaciones y examen

El curso contará con 2 interrogaciones a lo largo del semestre. Estas serán en horario de clases en las siguientes fechas:

Interrogación Fecha
1 Jueves 26 de septiembre
2 Jueves 17 de octubre

También el curso contará con un examen obligatorio. Este será un día de noviembre (fecha, hora, duración y sala por confirmar).

Se calificara con nota NIE

NIE = 0.7 * PROMEDIO(I1,I2) + 0.3 * NE

Controles

El curso contará con controles rápidos en clases o ayudantías sobre los contenidos del curso que se vayan viendo. Estas evaluaciones serán sorpresa y se notificarán a criterio del profesor.

La nota de los controles NC se calcula como el promedio simple de las notas de controles, descontando el(los) peor(es) control(es). La falta a un control será calificada con nota 1

NC = (C1+...+Cn-minx(C1+...+Cn))/n-x

Donde n es el numero de controles que se hagan en el semestre y x la cantidad a descontar

Proyecto

El curso contará con una entrega introductoria individual (E0) y un proyecto a lo largo del semestre.

Entrega Publicación Entrega
E0 21 de agosto 6 de septiembre 23:59

El proyecto grupal tiene 4 fases y estas son

ID fase Publicación Entrega Presentacion Fase
E1 7 de septiembre 25 de septiembre 27 de septiembre Propuesta y diseño
E2 22 de septiembre 18 de octubre 18 de octubre Prototipo
E3 17 de octubre 8 de noviembre 8 de noviembre MVP
E4 9 de noviembre TBA TBA Producto finalizado

Se especificará en clases o ayudantía que se espera del proyecto y la estructuración de los equipos, ademas del desafio a resolver.

Habrá un enunciado disponible para las fases

La entrega grupal tiene un factor de ponderacion por macrogrupo, que se hace de la siguiente forma

Ei grupal = Egrupo individual * 0.7 + Ek macro * 0.3

Cada entrega tiene un componente de coevaluación, evaluado en

Ei = 1 + ((Ei grupal - 1) * Fg)

Donde Fg es un factor de coevaluación asignado por el grupo que va de 0 a 1.2

La nota del proyecto total individual se calcula como

NP = 0.15 * E0 + 0.85 * PROMEDIO(E1,E2,E3,E4)

Criterio de aprobación

Todas las notas se calculan con dos decimales, excepto la nota final que se entrega con un decimal. El curso se calificará con las siguientes ponderaciones

Ncalc = 0.6 * NIE + 0.3 * NP + 0.1 * NC

Para aprobar el curso se requiere que

NE >= 4.00 NIE >= 4.00 NP >= 4.00 NC >= 4.00

La nota final, si se cumplen los criterios anteriores se calcula como

NF = Ncalc

Y aprueba si y solo si

NF >= 4.00

En otro caso

NF = max(3.9, Ncalc)

Foro

La página de issues se utilizará como foro para preguntas.

Bibliografia

  • Richard N. Taylor, “Software Architecture, Foundations, Theory and Practice”, Wiley, 2010.
  • Spinellis & Gousios, “Beautiful Architecture”, O’Reilly, 2009.
  • Ian Gorton, “Essential Software Architecture”, Springer, June, 2006.
  • Martin Fowler et al., “Patterns of Enterprise Application Architecture”, Addison Wesley, 2002

Política de integridad académica

Los alumnos de la Escuela de Ingeniería de la Pontificia Universidad Católica de Chile deben mantener un comportamiento acorde a la Declaración de Principios de la Universidad. En particular, se espera que mantengan altos estándares de honestidad académica. Cualquier acto deshonesto o fraude académico está prohibido; los alumnos que incurran en este tipo de acciones se exponen a un Procedimiento Sumario. Es responsabilidad de cada alumno conocer y respetar el documento sobre Integridad Académica publicado por la Dirección de Docencia de la Escuela de Ingeniería (disponible en SIDING).

Específicamente, para los cursos del Departamento de Ciencia de la Computación, rige obligatoriamente la siguiente política de integridad académica. Todo trabajo presentado por un alumno para los efectos de la evaluación de un curso debe ser hecho individualmente por el alumno, sin apoyo en material de terceros. Por trabajo se entiende en general las interrogaciones escritas, las tareas de programación u otras, los trabajos de laboratorio, los proyectos, el examen, entre otros.

En particular, si un alumno copia un trabajo, o si a un alumno se le prueba que compró o intentó comprar un trabajo, obtendrá nota final 1.1 en el curso y se solicitará a la Dirección de Docencia de la Escuela de Ingeniería que no le permita retirar el curso de la carga académica semestral.

Por copia se entiende incluir en el trabajo presentado como propio, partes hechas por otra persona. En caso que corresponda a copia a otros alumnos, la sanción anterior se aplicará a todos los involucrados. En todos los casos, se informará a la Dirección de Docencia de la Escuela de Ingeniería para que tome sanciones adicionales si lo estima conveniente.

Obviamente, está permitido usar material disponible públicamente, por ejemplo, libros o contenidos tomados de Internet, siempre y cuando se incluya la referencia correspondiente.

Lo anterior se entiende como complemento al Reglamento del Alumno de la Pontificia Universidad Católica de Chile. Por ello, es posible pedir a la Universidad la aplicación de sanciones adicionales especificadas en dicho reglamento.