Análisis y diseño orientado a objetos

Competencias: Diseñar modelos y desarrollar tecnologías para la creación de sistemas de cómputo utilizando principios de la Ingeniería del Software.

Proyecto 1: “Horarios”

Planteamiento del problema

Días previos al inicio de cada semestre académico, las directivas del programa involucradas directamente en el proceso de creación de cursos (grupos) y asignación de horarios a profesores y estudiantes, se ven enfrentadas a diversos inconvenientes que retrasan o hacen más complicado dicho proceso. Por ejemplo, deben tener en cuenta el número mínimo de estudiantes necesario para que un grupo pueda ser creado y no generar cruces de horarios en ningún momento. No solo las directivas se van afectadas a la hora de la matrícula, también los alumnos debido a los retrasos en la generación de la nueva configuración de horarios. La creación de grupos nuevos implica la asignación de un profesor, lo que conlleva tal vez una reacomodación total o parcial de los horarios ya establecidos.

Entonces se podría decir que comienza de nuevo el trabajo de las directivas encargadas de la asignación de la carga académica. Se deben empezar a considerar las solicitudes de los estudiantes con el fin de facilitarles y/o proporcionales su normal proceso académico, es decir, darles las garantías para que puedan desarrollar su plan de estudio.

Las variables que se deben considerar a la hora de generar los respectivos horarios son: con respecto a los docentes, se debe tener en cuenta el estado en el que éstos se encuentran con la universidad dependiendo del tipo de contratación, de los horarios de disponibilidad (Horario de Contrato menos Horario de Clases para profesores que no estén contratados por horas) y de la capacidad que tengan

para dictar una determinada asignatura, es decir, su perfil; con respecto a las asignaturas, se debe guardar relación para fijar las de un mismo semestre, ya que para programar un grupo se debe cumplir no solo que un profesor la pueda dictar sino que a esa hora no haya otro grupo programado de igual semestre. Este sería un caso crítico en el que cada materia cuenta con un solo grupo, para los casos en los que se cuente con más grupos hay mayor libertad para la asignación.

 

 Actores:

 

  • Alumno
  • Sistema
  • Profesor
  • Directiva/Administración

Diagrama de Casos de uso:

 

 

 

 

Clases:

  • Profesores
  • Alumnos
  • Materias
  • Catálogo
  • Grupo
  • Salón

Diagrama de Clases:

 

 

 

 

Diagramas de secuencia 

 

  

 

Alternativas: 

 

Reflexión

La representación de software a través de diagramas es muy importante. Aquí se presentan los principales diagramas empleados en la realización de un sistema que son diagramas de clases, diagramas de secuencia y casos de usos.

A continuación se presentan en resumen las partes más importantes de un caso de uso:

– ESCENARIO: Un escenario es una descripción parcial y concreta del comportamiento de un sistema en una determinada situación. Es una descripción parcial, porque no necesita describir todas las características de las entidades involucradas, sólo se describe aquello que está relacionado con un comportamiento particular del sistema analizado. A pesar de estar acotados a un determinado comportamiento, describen todo el contexto que involucra a esa actividad: recursos del sistema, objetivos de los usuarios, contexto social en que se desarrolla, entidades involucradas. Proveen un “retrato” de como esa actividad se lleva a cabo. Los escenarios describen situaciones teniendo en cuenta aspectos de uso, permitiendo: conocer el problema, unificar criterios, ganar compromiso con clientes / usuarios, organizar los detalles involucrados y entrenar a nuevos participantes.

– ACTOR, ROL: un actor representa el rol jugado por una persona o cosa que actúa con el sistema. Son solo los que utilizarán el sistema, no los que mantienen el sistema (“stakeholders”).

– El sistema tiene límites para los que están autenticados y los no autenticados