Casos de Analisis de Sistemas

Embed Size (px)

Citation preview

  • 7/22/2019 Casos de Analisis de Sistemas

    1/18

    Caso #1 - Sistema de Notas

    A continuacin se presenta el anlisis del caso de estudio Sistemas de Notas. El alcance de esta solucin

    contempla el modelo de dominio del mundo del problema. Es importante aclarar que esta solucin no

    es nica.

    Enunciado

    El Colegio de Los Alpes es uno de los colegios ms reconocidos en el pas. Tiene

    desde primero hasta undcimo grado y en cada uno de cursos hay 1, 2 3

    secciones llamadas A, B y C respectivamente. Todos los estudiantes de una misma

    seccin ven juntos todos los cursos de 7 a.m. a 1 p.m. Cada clase es de 1 hora y

    tienen un recreo de 9 a 10. Una seccin ve el mismo curso a la misma hora todos

    los das (por ejemplo, ve Matemticas II de 10 a 11, de lunes a viernes). Todos los

    profesores son de tiempo completo y tienen asociado, adems de la informacin

    personal, un cdigo nico, una lista de materias que puede dictar, una lista de

    cursos que est dictando, el grado del cual est encargado (si tiene alguno), y una

    categora que determina el salario que le van a pagar. Las categoras son de 1 a 5

    (5 es la mxima) y el sistema debe permitir a la Oficina de Recursos Humanos

    administrar la tabla de salarios.

    Cuando un estudiante se matricula en el colegio, debe ir a la Oficina de Admisiones.

    All suministra todos sus datos personales, el grado al cual entra y el estrato (1..6)

    en el cual vive. All, despus de pagar, el sistema lo agrega a la seccin en la cualhaya menos estudiantes en ese momento. La matrcula se calcula usando una tabla

    a partir del estrato al cual pertenece. Dicha tabla tambin se debe poder

    administrar desde la Oficina de Admisiones. Cada dos meses la Oficina de Registro

    pide al sistema la generacin de los boletines de notas de todos los estudiantes, a

    partir de la informacin ingresada en el sistema directamente por los profesores. Al

    hacer esto, el sistema debe calcular las notas definitivas de cada estudiante en

    cada curso y cerrar el bimestre, de manera que las notas parciales ya no se puedan

    modificar. Por reglamento del colegio, el profesor debe hacer cada bimestre dos

    exmenes y dos trabajos, e ingresar cada una de estas notas al sistema a medidaque las va obteniendo. La nota del bimestre en cada curso corresponde al promedio

    de estos cuatro valores. Las notas van de 1 a 5 (por ejemplo, 4.23). En un ao hay

    4 bimestres. La Oficina de Registro debe poder, adems, pedir al sistema la

    generacin de un boletn especfico de un bimestre ya cerrado, dando el carn del

    estudiante y el bimestre. El sistema no maneja informacin de aos anteriores, sino

    slo la informacin del ao en curso.

    El colegio tiene un saln para cada seccin (hasta 33 salones). Cada saln se llama

    con el grado y la seccin correspondientes. Por ejemplo, 3A (tercero seccin A). El

    sistema genera, a peticin de la Oficina de Registro, una comunicacin impresa con

  • 7/22/2019 Casos de Analisis de Sistemas

    2/18

    los cursos que debe dictar algn profesor del colegio (materia y hora), que incluye

    la lista de sus estudiantes (carn y nombre). Este carn se le asigna al estudiante

    el da de la matrcula y corresponde a un valor secuencial (5 dgitos: 00000-

    99999).

    Una materia tiene un nombre (por ejemplo Matemticas II) y un cdigo. Este

    cdigo es nico y est constituido por 5 dgitos, as: los dos primeros dgitos dan el

    grado (01-11), y los tres siguientes corresponden a un consecutivo. La informacin

    de materias, cursos, profesores y secciones se debe cargar, al comienzo de la

    ejecucin, de una base de datos con la que cuenta el colegio y que es administrada

    con otro programa.

    Solucin propuesta

    Aspectos Estructurales

    Solucin propuesta - Aspectos Estructurales

    Anlisis del modelo de dominio

    Para ver imagen ampliada click aqu

    Entidad Descripcin Atributos y asociaciones

    Colegio Representa el colegio

    bimestreActual: bimestre actual del ao

    [5] tablaSalarios: contiene los posibles salarios

    de un profesor

    [*] matriculados: contiene los estudiantesmatriculados del colegio

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos:solucion1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos:solucion1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos:modelodominio_sistema_de_notas_.pdfhttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos:modelodominio_sistema_de_notas_.pdfhttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos:solucion1&media=casos:s_1.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos:modelodominio_sistema_de_notas_.pdfhttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos:solucion1
  • 7/22/2019 Casos de Analisis de Sistemas

    3/18

    [11] grados: contiene los grados escolares

    ofrecidos

    [*] profesores: contiene los profesores del

    colegio

    [6] tablaMatriculas: contiene el valor de la

    matrcula por estrato social [*] catalogo: contiene las materias ofrecidas por

    el colegio

    GradoRepresenta uno de los grados

    escolares

    [1..3] secciones: contiene las secciones de

    estudiantes

    [1] encargado: es el profesor encargado

    nmero: es el nmero del grado

    SeccinEs una seccin de un grado

    escolar

    letra: es la letra de la seccin

    [5] cursos: contiene los cursos vistos por esta

    seccin

    [*] estudiantes: contiene los estudiantes de esta

    seccin

    CursoEs un curso visto por una seccin

    en un cierto horario

    hora: es la hora en la que se dicta el curso

    [1] datosMateria: son los datos de la materia

    dictada por este curso

    Profesor Es un profesor del colegio

    informacionPersonal: es la informacin personal

    de un profesor

    cdigo: es el cdigo nico de identificacin del

    profesor

    categora: es la categora salarial

    [0..1] gradoEncargado: grado del que puede

    estar encargado el profesor

    [*] dictando: contiene los cursos que est

    dictando actualmente

    [*] dictables: contiene las materias que puede

    dictar

    MateriaEs una materia ofrecida por el

    colegio

    nombre: es el nombre de la materia

    cdigo: es el cdigo de identificacin

    programa: es el programa cubierto por la

    materia

    EstudianteEs un estudiante inscrito en el

    colegio

    informacinPersonal: es la informacin personal

    de un estudiante

    carn: es el cdigo nico de identificacin

    estrato: es el estrato social al que pertenece el

    estudiante

    [5] cursosAbiertos: contiene los cursos vistos en

    el bimestre actual

    [0..4] bimestresCerrados: contiene los datos

    acadmicos del estudainte de los bimestres

    cerrados

  • 7/22/2019 Casos de Analisis de Sistemas

    4/18

    NotasParciales

    Representa el conjunto de notas

    de un curso del bimestre en

    curso

    [1] datosCurso: son los datos del curso

    [0..1] examen1: posible nota de un examen

    [0..1] examen2: posible nota de un examen

    [0..1] trabajo1: posible nota de un trabajo

    [0..1] trabajo2: posible nota de un trabajo

    NotaEs una nota de un examen o un

    trabajo valor: es el valor numrico de la nota

    BimestreCerrado Representa un bimestre cerrado

    id: es el identificador nico

    [5] cursosCerrados: contiene el conjunto de

    notas de cada uno de los cursos

    NotaCurso

    Representa el conjunto de notas

    de un curso de un bimestre

    cerrado

    nota: es el valor numrico de la nota

    [1] curso: son los datos del curso

    CategoraEs una categora salarial de un

    profesor

    identificador: es el identificador nico

    salario: es el valor numrico del salario

    EstratoEs el estrato social de un

    estudiante

    identificador: es el identificador nico

    valor: es el valor numrico de la matrcula

    Enunciado del caso

    Caso #2 - Sistema de Informacin de unParqueadero

    A continuacin se presenta el anlisis del caso de estudio del Sistema de Informacin de un

    Parqueadero. El alcance de la solucin contempla anlisis de los requerimientos funcionales, modelo de

    dominio del mundo y diagramas de secuencia del problema. Es importante aclarar que esta solucin no

    es nica.

    Enunciado

    Se quiere construir un sistema de informacin para manejar un parqueadero.

    En un parqueadero existe un nmero dado de puestos (configurados por el

    administrador), cada uno de los cuales tiene un identificador.

    Al llegar un carro a la puerta, el portero teclea la placa del carro y el sistema le

    informa el puesto en el que debe parquear.

    A la salida, el portero teclea la placa y el sistema informa el monto que debe pagar

    el dueo del carro, si ste no tiene un contrato mensual con el parqueadero. Para

    abrir un contrato por mes (todos comienzan el 1 del mes), el dueo de un carro

    debe ir donde el administrador, darle los datos bsicos del carro y pagar.

    Los carros que tienen contrato no tienen que pagar nada a la salida.

    Tanto la tarifa que paga cada vehculo por minuto como la tarifa que se paga por un

    contrato mensual son definidos por el administrador.

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casoshttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casoshttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos
  • 7/22/2019 Casos de Analisis de Sistemas

    5/18

    Por razones de auditora, el parqueadero debe guardar todos los servicios de

    parqueo del ltimo mes: hora de llegada, hora de salida, placa del carro, monto

    pagado (si pag algo).

    El administrador puede pedir un reporte en el que aparezcan dichos servicios de

    parqueo para un contrato dado (identificado por la placa) o para todos los carrosque no tienen contrato.

    Al final de cada mes el administrador hace un cierre, se borran los archivos de

    auditora y se cancelan todos los contratos.

    Solucin propuesta

    Aspectos Funcionales

    Aspectos Estructurales

    Aspectos de Comportamiento

    Solucin propuesta - Aspectos FuncionalesAnlisis de Requerimientos Funcionales

    ActoresAdministrador Representa a la persona encargada de administrar el parqueadero

    PorteroRepresenta a la persona que permite la entrada de vehculos y cobra cada vez

    que sale uno de ellos

    Guas Clave :

    - Nombre los casos de uso comenzando con un verbo.

    - Escriba casos de uso en un estilo esencial; no considere la interfaz de usuario y

    cntrese en la intencin del actor.

    - Las relaciones entre los casos de uso son secundarias en el trabajo con los

    diagramas de casos de uso.

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2_1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2_1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2_2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2_2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_1.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2_2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2_1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2:solucion2
  • 7/22/2019 Casos de Analisis de Sistemas

    6/18

    Actor Caso de uso Entradas Precondiciones Resultados

    C1: Configurar

    puestos

    nmero

    de puestos

    El nmero de

    puestos es vlido

    Se ha definido que el

    parqueadero tiene el nmero dado

    de puestos

    Se ha asignado un identificador acada puesto

    C2: Definir tarifas

    tarifa

    por minuto

    tarifa

    por mes

    Las tarifas son

    vlidas

    Se han fijado las tarifas del

    parqueadero en los valores dados

    C3: Abrir Contrato

    datos

    bsicos del

    carro

    Los datos son

    vlidos

    Se ha definido el contrato para el

    carro con los datos dados

    C4: Generar el

    reporte de un

    contrato

    placa del

    carro

    La placa del

    carro es vlida

    Se ha generado un reporte con

    todos los servicios de parqueo del

    carro durante el mes

    C5: Generar el

    reporte de todos

    los carros sin

    contrato

    Se ha generado un reporte con

    los servicios de parqueo de todos los

    carros que no tienen contrato y que

    han entrado durante el ltimo mes

    C6: Generar cierre

    Se han borrado los archivos de

    auditoria y se han cancelado todos

    los contratos del mes

    Actor Caso de uso Entradas Precondiciones Resultados

    C7: Permitir el

    ingreso de un

    carro

    placa

    del carro

    Hay cupo en el

    parqueadero

    Se ha indicado el puesto en el que

    el vehculo debe parquear

    El carro ha ingresado al

    parqueadero y ha ocupado el puesto

    sealado

    C8: Autorizar

    salida de un

    carro

    placa

    del carro

    Hay un carro con la

    placa dada en el

    parqueadero

    Se ha indicado el valor que debe

    pagar el conductor del carro (el valor

    es 0 si el carro tiene contrato)

    El carro ha salido del parqueadero

    Enunciado del caso

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_4.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_3.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_2.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_4.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_3.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_2.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_4.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_3.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2&media=casos2:c2_2.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2
  • 7/22/2019 Casos de Analisis de Sistemas

    7/18

    Solucin Propuesta - Aspectos Estructurales

    Anlisis del modelo de dominio

    Guas Clave :

    - Un modelo de dominio es una representacin de las cosas del mundo real del

    dominio de inters, no de componentes de software.

    - Es mejor especificar por exceso en un modelo del dominio con muchas clases

    conceptuales de grano fino que especificar por defecto.

    - Haga el modelo de dominio con el modo de trabajo de los cartgrafos: utilice los

    nombres existentes en el territorio, excluya caractersticas irrelevantes y no aada

    cosas que no estn ah.

    - Si tiene dudas en cuanto representar algo como un atributo o como un concepto,

    piense si lo que desea representar es un nmero o texto en el mundo real, si no lo

    es, probablemente sea una clase conceptual, no un atributo. En caso de mayor

    duda, considrelo como un concepto separado.

    - Un modelo de dominio no es absolutamente correcto o equivocado, sino ms o

    menos til, es una herramienta de comunicacin que proporciona una diccionario

    visual del vocabulario y conceptos del dominio de los cuales nos inspiramos para

    nombrar algunas cosas del diseo de software.

    Entidad Descripcin Atributos y asociaciones

    Parqueadero Representa el parqueadero

    tarifaMinuto: tarifa que se cobra por minuto

    estacionado

    tarifaMensual: tarifa que se cobra por un contrato

    mensual

    [*] movimientosSinContrato: conjunto de servicios de

    parqueo prestados a los carros que no cuentan con un

    contrato mensual

    [*] puestosOcupados: conjunto de puestos ocupados

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2_1&media=casos2:c2_5.png
  • 7/22/2019 Casos de Analisis de Sistemas

    8/18

    en el parqueadero

    [*] puestosLibres: conjunto de puestos libres en el

    parqueadero

    [*] contratos: conjunto de contratos abiertos para el

    mes actual

    [*] parqueados: conjuntode carros estacionadosactualmente en el parqueadero

    Puesto

    Es un puesto del parqueadero

    que puede tener un carro

    estacionado

    identificador: identificador nico del puesto

    [0..1] carro: carro que puede estar estacionado en este

    puesto

    CarroEs un carro parqueado en algn

    puesto del parqueadero

    horaLlegada: hora de llegada del carro al parqueadero

    placa: nmero de placa del carro

    [0..1] carrosConContrato: contrato mensual que puede

    tener un carro con el parqueadero

    [0..1] puesto: puesto en el que est parqueado el carro

    ContratoRepresenta un contrato

    mensual de un carro

    placa: nmero de placa del carro

    [*] movimientosConContrato: conjunto de servicios

    utilizados por el carro durante el mes actual

    Movimiento

    Representa el servicio prestado

    a un carro al entrar y salir del

    parqueadero

    horaLlegada: hora de llegada del carro al parqueadero

    horaSalida: hora de salida del carro del parqueadero

    montoPagado: suma de dinero pagada por el carro (si

    pag algo)

    placa: nmero de placa del carro

    Enunciado del caso

    Solucin Propuesta - Aspectos deComportamiento

    Principales diagramas de secuencia

    Caso de uso Entradas Precondiciones ResultadosC4: Generar el

    reporte de uncontrato

    placa del

    carro (placa)

    La placa del carro

    es vlida

    Se ha generado un reporte con todos los

    servicios de parqueo del carro durante elmes

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2
  • 7/22/2019 Casos de Analisis de Sistemas

    9/18

    Guas Clave :

    - Dibuje un Diagrama de secuencia del sistema para el principal escenario de xito

    de cada caso de uso, y los escenarios frecuentes o alternos complejos.

    - Los diagramas de secuencia pueden opcionalmente mostrar el retorno de un

    mensaje mediante una lnea punteada con la punta de la flecha abierta, al final de

    una caja de activacin. Pero lo normal es que se excluya por quienes utilizan UML.

    Caso de uso Entradas Precondiciones ResultadosC8: Autorizar

    salida de un

    carro

    placa delcarro (placa)

    Hay un carro con la

    placa dada en el

    parqueadero

    Se ha indicado el valor que debe pagar

    el conductor del carro (el valor es 0 si elcarro tiene contrato)

    El carro ha salido del parqueadero

    Para ver imagen ampliada click aqu

    Enunciado del caso

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos2:diagramacomportamiento_parqueadero.pdfhttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos2:diagramacomportamiento_parqueadero.pdfhttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2_2&media=casos2:c2_7_.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2_2&media=casos2:c2_6.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2_2&media=casos2:c2_7_.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos2:solucion2_2&media=casos2:c2_6.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos2:diagramacomportamiento_parqueadero.pdf
  • 7/22/2019 Casos de Analisis de Sistemas

    10/18

    Caso #4 - Exmenes en lnea

    A continuacin se presenta el anlisis del caso de estudio de Exmenes en Lnea. El alcance de lasolucin contempla anlisis de los requerimientos funcionales, modelo de dominio del mundo y

    diagramas de secuencia del problema. Es importante aclarar que esta solucin no es nica.

    Enunciado

    Una universidad est interesada en construir un sistema para el manejo y

    aplicacin de exmenes en lnea para cualquiera de sus cursos. La universidad

    considera que dicho sistema es el primer paso para montar versiones totalmente

    virtuales de sus cursos y ha preparado varios incentivos para que los profesores lo

    utilicen muy activamente.

    En dicho sistema cualquier profesor (despus de haber tecleado su usuario y su

    palabra clave desde un navegador) debe poder agregar un nuevo curso, para lo

    cual debe dar un cdigo y un nombre. Para cada curso, el sistema almacena un

    conjunto de preguntas que, por ahora, tienen que ser de seleccin mltiple. Dichas

    preguntas pueden ser agregadas por cualquier profesor (no tiene que ser el

    profesor que cre el curso). Una pregunta tiene asociado un nmero consecutivo

    (llamado su identificador y asignado automticamente por el sistema) y consta de

    un enunciado y de una secuencia de respuestas posibles, numeradas de 1 a 5, una

    sola de las cuales es correcta. Una vez los profesores han definido este banco depreguntas, cualquiera de ellos puede crear un examen (debe dar su nombre de

    usuario y el cdigo del curso, para que el sistema asocie el examen con este

    profesor) de dos maneras distintas: seleccionando pregunta a pregunta dando su

    identificador, o pidiendo al sistema que genere el examen de manera aleatoria,

    para lo cual el profesor debe definir el nmero de preguntas que el examen debe

    contener.

    Un examen tiene un cdigo que es nico (generado por el sistema), el cual debe

    ser tecleado por el estudiante cuando le piden que conteste un examen de uncurso. Al crear un examen el profesor define una fecha y una hora de inicio (en ese

    momento se abre el examen), y una fecha y una hora de finalizacin (en ese

    momento se cierra el examen). Los exmenes pueden abrirse o cerrarse en

    cualquier momento del da, de la semana, pero no se espera que se realicen

    uniformemente a lo largo del semestre: en algunas semanas particulares se

    realizarn la mayora de los exmenes.

    Cada estudiante (identificado por un nmero de carnet y un nombre), luego de dar

    su usuario y su palabra clave desde un navegador, indica que va a comenzar a

    contestar un examen abierto, ingresando su cdigo. Despus, puede contestar sus

  • 7/22/2019 Casos de Analisis de Sistemas

    11/18

    preguntas, dando el nmero de la pregunta que quiere contestar y la respuesta que

    considera correcta. Si el estudiante ya haba contestado dicha pregunta, el sistema

    remplaza la respuesta por la nueva. Al llegar la hora de cierre del examen, el

    sistema calcula la nota de cada uno de los estudiantes (un valor entre 0 y 5),

    teniendo en cuenta que todas las preguntas valen lo mismo En cualquier momentoun estudiante puede consultar los resultados (nota) de todos los exmenes ya

    cerrados que fueron presentados por l. Adicionalmente, un profesor tambin

    puede consultar los resultados de cualquiera de los exmenes cerrados que l ha

    creado.

    La universidad est planeando una campaa bastante ambiciosa para que los

    profesores construyan un banco de preguntas muy completo (al menos 500

    preguntas por curso). Se calcula que cuando el sistema sea adoptado por todos los

    cursos de la universidad (actualmente son 900) el nmero de estudiantes

    participantes ser cercano a 15.000.

    Solucin propuesta

    Aspectos Funcionales

    Aspectos Estructurales

    Aspectos de Comportamiento

    Solucin propuesta - Aspectos Funcionales

    Anlisis de Requerimientos Funcionales

    ActoresEstudiante

    Representa a un estudiante que va a utilizar el sistema de exmenes en lnea,

    contestando preguntas y consultando sus resultados.

    ProfesorRepresenta a un profesor, que construye exmenes para aplicar a sus estudiantes y

    revisa los resultados obtenidos por ellos.

    Actor Caso de uso Entradas Precondiciones ResultadosC1: iniciar un cdigo Es un estudiante El estudiante comenz a

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4_2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4_2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4_1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4_1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_2.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_1.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_2.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_1.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4_1http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4_2http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4:solucion4
  • 7/22/2019 Casos de Analisis de Sistemas

    12/18

    examen abierto estudiante

    cdigo

    examen

    vlido

    El examen est

    abierto

    contestar el examen, inicialmente

    sin ninguna respuesta dada

    C2: contestar

    una pregunta de

    un examen

    iniciado

    cdigo

    estudiante cdigo

    examen

    nmero

    de la

    pregunta

    nmero

    de la

    respuesta

    Es un estudiantevlido

    El estudiante ya

    haba iniciado este

    examen

    Los nmeros de la

    pregunta y la

    respuesta son vlidos

    El estudiante ha contestado en

    el examen, la pregunta dada con la

    respuesta dada. Si la pregunta ya

    tena una respuesta, sta ha sido

    actualizada

    C3: consultar los

    resultados de susexmenes

    cdigo

    estudiante

    Es un estudiante

    vlido

    El estudiante obtiene las notas

    obtenidas en todos sus exmenes

    presentados que ya fueron

    cerrados

    Actor Caso de uso Entradas Precondiciones ResultadosC4: agregar un

    curso

    cdigo curso

    nombre curso

    No existe un curso

    con ese cdigo

    El curso se ha agregado al

    sistema de exmenes en lnea

    C5: agregar

    una pregunta

    a un curso

    cdigo curso

    enunciado

    pregunta

    respuesta1,

    respuesta2,

    respuesta3,

    respuesta4,

    respuesta5

    respuesta

    Es un curso vlido

    La respuesta

    correcta es una de las

    respuestas posibles

    La pregunta con sus

    respuestas posibles ha sido

    agregada al banco de preguntas

    del curso

    Se le ha asignado a la

    pregunta un identificador nico

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_4.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_3.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_4.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4&media=casos4:c4_3.png
  • 7/22/2019 Casos de Analisis de Sistemas

    13/18

    correcta

    C6: crear un

    examen vaco

    de un curso

    cdula profesor

    cdigo curso fecha-hora inicio

    fecha-hora final

    Es un profesor vlido

    Es un curso vlido Las fechas de inicio y

    finalizacin son vlidas

    Se ha creado un nuevo

    examen vaco, para el curso

    dado, con las fechas dadas

    El nuevo examen se haasociado con el profesor

    Al examen creado se le ha

    asignado un cdigo que es

    nico

    C7: agregar

    una pregunta

    a un examen

    cdigo examen

    identificador

    pregunta

    El cdigo del examen

    es vlido y no ha sido

    abierto

    La pregunta es vlida

    y corresponde al curso

    del cual hace parte el

    examen

    Se ha agregado al examen la

    pregunta con el identificador

    dado

    C8: generar

    examen

    cdula profesor

    cdigo curso

    nmero de

    preguntas

    fecha-hora inicio

    fecha-hora final

    Es un profesor vlido

    Es un curso vlido

    El nmero de

    preguntas es vlido

    Las fechas de inicio y

    finalizacin son vlidas

    Se ha creado un nuevo

    examen, para el curso dado, con

    el nmero de preguntas

    pedidas, seleccionadas de

    manera aleatoria, con las fechas

    dadas

    El nuevo examen se ha

    asociado con el profesor

    Al examen creado se le ha

    asignado un cdigo que es

    nico

    C9: consultar

    los resultados

    de un examen

    cdula profesor

    cdigo examen

    Es un profesor vlido

    El examen fue

    creado por el profesor,

    y ya se encuentra

    cerrado

    El profesor obtiene los

    resultados obtenidos por los

    estudiantes que contestaron el

    examen

    Enunciado del caso

    Solucin Propuesta - Aspectos Estructurales

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4
  • 7/22/2019 Casos de Analisis de Sistemas

    14/18

    Anlisis del modelo de dominio

    Para ver imagen ampliada click aqu

    Evale:

    Los elementos del mundo estn completos? Las relaciones entre elementos son suficientes? Tengo toda la informacin que necesito No tengo informacin que no necesito El modelo del mundo soporta los requerimientos que se plantearon? Podemos navegar el modelo adecuadamente?

    Entidad Descripcin Atributos y asociaciones

    Examen

    Es un examen construido por un

    profesor, en todos sus estados

    posibles (en creacin, abierto y

    cerrado)

    cdigo: identificador nico del examen

    inicio: fecha-hora de inicio del examen

    finalizacin: fecha-hora de cierre del

    examen

    [*] preguntas: conjunto de preguntas que

    hacen parte del examen

    [1] curso: curso del cual hace parte este

    examen

    [*] terminados: conjunto de exmenes

    terminados de contestar por los estudiantes.

    Mientras el examen est abierto, este

    conjunto est vaco

    ExamenEnProceso Es un examen que est siendocontestado por un estudiante y

    [*] contestadas: contiene las preguntas

    que hasta ahora ha contestado el estudiante,

    con su respectiva respuesta

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos4:modelodominio_examenes_en_linea.pdfhttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos4:modelodominio_examenes_en_linea.pdfhttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4_2&media=casos4:c4_5.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/fetch.php?media=casos4:modelodominio_examenes_en_linea.pdf
  • 7/22/2019 Casos de Analisis de Sistemas

    15/18

    que no ha sido todava cerrado [1] examen: examen que est siendo

    contestado

    EstudianteEn un estudiante inscrito en la

    universidad

    carn: carn del estudiante

    nombre: nombre del estudiante

    [*] contestando: contiene los exmenesque en este momento el estudiante se

    encuentra contestando

    [*] contestados: contiene los resultados de

    los exmenes cerrados que fueron

    contestados por el estudiante

    Profesor Es un profesor de la universidad

    cdula: documento de identidad del

    profesor

    [*] creados: contiene los exmenes

    creados por el profesor, que se encuentran en

    proceso de construccin o abiertos

    [*] cerrados: contiene los exmenes

    creados por el profesor, que se encuentran

    cerrados

    PreguntaEs una pregunta de seleccin

    mltiple de un examen

    identificador: cdigo de la pregunta

    enunciado: texto que contiene el

    enunciado de la pregunta

    [5] posibles: contiene las 5 respuestas

    posibles a la pregunta

    [1] correcta: es la respuesta correcta a la

    pregunta. Corresponde a una de las 5

    respuestas posibles

    Curso Es un curso de la universidad

    cdigo: cdigo del curso

    nombre: nombre del curso

    [*] preguntas: banco de preguntas del

    curso

    RespuestaEs una respuesta a una pregunta

    de un examen

    texto: cadena de caracteres con la

    respuesta

    RespuestaMarcada

    Es la respuesta que ha dado un

    estudiante a una pregunta de un

    examen

    [1] preguntaRef: pregunta del examen que

    contest [1] contestada: respuesta marcada como

    correcta

    ManejadorExamenesRepresenta el manejador de

    exmenes de la universidad

    [*] cursos: contienetodos los bancos de

    preguntas asociados con los cursos de la

    universidad

    [*] profesores: contiene todos los

    profesores de la universidad

    [*] estudiantes: contiene todos los

    estudiantes de la universidad

    [*] exmenes: contiene todos losexmenes de la universidad, en cualquier

  • 7/22/2019 Casos de Analisis de Sistemas

    16/18

    estado (en creacin, abierto y cerrado)

    ExamenTerminadoRepresenta un examen cerrado, ya

    terminado por un estudiante

    nota: evaluacin final obtenida en el

    examen

    [1] estudiante: persona que contest el

    examen [1] examen: examen contestado

    Enunciado del caso

    Solucin Propuesta - Aspectos deComportamiento

    Principales diagramas de secuencia

    Caso de uso Entradas Resultados

    C1: iniciar examen

    abierto

    Cdigo estudiante

    (codEst)

    Cdigo examen

    (codEx)

    El estudiante comenz a contestar el examen,

    inicialmente sin ninguna respuesta dada

    Caso de uso Entradas Resultados

    C6: crear un examen vaco

    de un curso

    cdula profesor(ced)

    cdigo curso

    (cod)

    fecha-hora

    inicio (inic)

    fecha-hora final

    (fin)

    Se ha creado un nuevo examen vaco, para el curso

    dado, con las fechas dadas

    El nuevo examen se ha asociado con el profesor

    Al examen creado se le ha asignado un cdigo que

    es nico

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4_1&media=casos4:c4_6.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4
  • 7/22/2019 Casos de Analisis de Sistemas

    17/18

    Caso de uso Entradas Resultados

    C2: Contestar una

    pregunta de un examen

    iniciado

    carn

    estudiante (car)

    cdigo examen

    (cod)

    nmero de la

    pregunta (preg)

    nmero de la

    respuesta (resp)

    El estudiante ha contestado en el examen la pregunta

    dada con la respuesta dada. Si la pregunta ya tena una

    respuesta, sta ha sido actualizada

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4_1&media=casos4:c4_7.png
  • 7/22/2019 Casos de Analisis de Sistemas

    18/18

    Enunciado del caso

    http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4http://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4_1&media=casos4:c4_9.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4_1&media=casos4:c4_8.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4_1&media=casos4:c4_9.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/lib/exe/detail.php?id=casos4:solucion4_1&media=casos4:c4_8.pnghttp://sistemas.uniandes.edu.co/~csof5301/dokuwiki/doku.php?id=casos4