En construcción.
Créditos | 3–+– |
Zona | Curso básico profesional |
Tipo de proyecto | Construcción de soluciones de TI |
Pre-requisitos | ISIS 2603 |
Propósito
El propósito de este curso es desarrollar habilidades en las áreas de diseño y arquitectura de software, apoyándose en herramientas metodológicas como los estilos de arquitectura, los patrones (e.g. diseño, arquitectura). Igualmente, se pretende desarrollar la capacidad de usar y entender el impacto de la tecnología en la arquitectura del software.
Objetivos generales
El curso pretende desarrollar las competencias de definir, justificar, implementar y evaluar una arquitectura de software para un problema en el mundo empresarial. Al finalizar el curso el estudiante debe estar en capacidad de:
- Identificar los principales atributos de calidad del software (disponibilidad, desempeño, modificabilidad, seguridad) y su impacto en el diseño y desarrollo de software.
- Utilizar los requerimientos funcionales y requerimientos de calidad para seleccionar los estilos arquitecturales y patrones de diseño más apropiados para el diseño de una solución.
- Utilizar los conceptos básicos de arquitecturas de software para definir una estrategia de desarrollo. Esto significa, identificar los elementos del mundo de la solución – los componentes de software, sus propiedades visibles externamente y las relaciones entre ellos – para estructurar y organizar el proceso de desarrollo de software.
- Utilizar adecuadamente los patrones (e.g. diseño, arquitectura) y los estilos de arquitectura para explicar el diseño de un sistema. Explicar y proponer una solución a los problemas de interacción entre los componentes. Justificar cómo una solución responde a los requerimientos y restricciones de un negocio.
- Comprender y desarrollar habilidades en el uso de tecnologías para el apoyo de arquitecturas de software.
- Realizar una aplicación mediana usando el modelo empresarial por componentes JEE.
- Diseñar e implementar experimentos para validar propiedades de calidad en el diseño de una solución.
Metodología
El curso se desarrolla alrededor de dos ejes principales. El primer eje corresponde al trabajo realizado en ExpoAndes (http://expoandes.uniandes.edu.co) que se traduce en trabajo en grupo y desarrollo de proyectos. El segundo eje se concentra en aspectos de la carrera desarrollados por ciclos completos donde se presentan uno o más procesos de ingeniería. El contexto general de la vida universitaria se aborda a lo largo del semestre con presentaciones, visitas y talleres.
Ciclos
Objetivo
Los ciclos pretenden que el estudiante tenga una vivencia controlada del quehacer del ejercicio profesional en un contexto relacionado con áreas de la profesión. Las actividades realizadas por los estudiantes responden a una o más etapas de procesos de ingeniería.
Trabajo en grupo (3 personas). Los grupos de trabajo son organizados por el profesor en los dos primeros ciclos y la conformación del tercer ciclo es definida por los alumnos.
Cada ciclo está conformado por un reto (estudio autónomo y obligación de resultados), una sesión de apertura, una actividad (e.g., taller, visita, conferencia) y un cierre presencial (Presentación oral y escrita).
- Reto
- Sesión de apertura:
- descripción del reto
- Actividad en clase: experiencias en alguno de los siguientes escenarios
- Prácticas en laboratorio
- presentación de videos sobre tendencias en la tecnología
- visita a una empresa
- Conferencia de alguien externo o una demo sobre un proyecto que responda de forma total o parcial a la problemática tratada en el ciclo. Estos proyectos pueden ser de cursos del pregrado, de grupos expoandes de semestres anteriores, de proyectos de mitad de semestre.
- Cierre presencial: presentación oral del trabajo escrito entregado. Esta presentación incluye el proceso seguido para el desarrollo del ciclo, las dificultades y logros obtenidos y se apoya en creación de videos, juegos y generación de wikis.
Diseño de los ciclos
Los ciclos evidencian el proceso de solución informática de un problema, al igual que permiten identificar áreas de conocimiento.
- Proceso de solución informática: A partir de un problema el ISC sigue un proceso (ejecución de unas tareas en unas etapas) para construir una solución disponible a uno o varios usuarios. El proceso se describe en términos de etapas: Análisis que permite generar la especificación del problema (Requerimientos Funcionales, Mundo o contexto del problema y Requerimientos No Funcionales), Diseño de la solución que corresponde a imaginar una solución y definir las partes que la componen y finalmente, la construcción de la solución que corresponde a implementar el diseño y probar su correcto funcionamiento.
- Áreas de conocimiento: Corresponden a áreas de la ISyC que permiten abordar una problemática y plantear soluciones que aporten valor. Ejemplos de áreas son: bases de datos, ingeniería de software, IHM 1), computación visual, redes, sistemas operativos, métodos formales, tecnologías en las organizaciones.
Se proponen 2 ciclos en el semestre:
C1: Fases básicas en un proyecto informático
C2: Contextos de uso y restricciones (e.g., distribución, ubicuidad, autonomía de los objetos)
Contenido
La descripción del contenido del curso es temática y no corresponde a la organización del curso en el tiempo. Se definieron cuatro ejes temáticos para el desarrollo del contenido.
Tecnología | Proceso | Dominio aplicativo | Hebilidades |
---|---|---|---|
Java | Metodologías para el desarrollo de proyectos | Juegos/Videos | Trabajo en grupo |
Sitio del curso | Sostenibilidad de proyectos (económicamente hablando) | Dispositivos móviles | Comunicación oral y escrita |
Frameworks y herramientas para creación de juegos y videos | Sistemas de información Argumentación |
Evaluación
La evaluación está compuesta por el proyecto ExpoAndes, los ciclos y el trabajo individual. Los porcentajes se distribuyen de la siguiente manera:
- ExpoAndes 40%
- 30% 3 entregas: informe escrito 5%, presentación oral 3% y evaluación cruzada 2%
En caso de no tener presentaciones asociadas a la entrega, todo el porcentaje se asigna al informe escrito
- 10% entrega final: informe escrito 6%, presentación ante jurados en la feria 4%
- Ciclos 30% C1, C2
- Trabajo individual, tareas, quices 10%
- Parcial sistemas numéricos y representación 20%
- Sesión de Acompañamiento 5%
Interacción Hombre Máquina1)
Conocimientos previos
Condiciones de inscripción