FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

90
FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA PROFESOR: JOAQUÍN NICOLÁS ROS CÓDIGO GRUPO: FIS201 ALUMNOS: JOSÉ LUIS ABELLÁN MIGUEL ([email protected]) MIGUEL ÁNGEL MARTÍNEZ DEL AMOR ([email protected]) TITULACIÓN: INGENIERÍA DE INFORMÁTICA. ASIGNATURA: FUNDAMENTOS DE INGENIERÍA DEL SOFTWARE CONVOCATORIA: SEPTIEMBRE 2005

Transcript of FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

Page 1: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

PROFESOR: JOAQUÍN NICOLÁS ROS CÓDIGO GRUPO: FIS201

ALUMNOS: JOSÉ LUIS ABELLÁN MIGUEL ([email protected]) MIGUEL ÁNGEL MARTÍNEZ DEL AMOR ([email protected])

TITULACIÓN: INGENIERÍA DE INFORMÁTICA. ASIGNATURA: FUNDAMENTOS DE INGENIERÍA DEL SOFTWARE

CONVOCATORIA: SEPTIEMBRE 2005

Page 2: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

ÍNDICE 1. Ámbito y alcance (pág.1) 2. Catálogo de requisitos (pág. 4) 3. Glosario de términos (pág. 11) 4. Catálogo de normas (pág. 12) 5. Descripción general del entorno tecnológico (pág. 13) 6. Contexto del sistema (pág. 14) 7. Diagrama de subsistemas (pág. 15) 8. Modelo de procesos (pág. 16)

DFD 1 (pág. 16) DFD 2 (pág. 20) DFD 4.3.3 (pág. 23) DFD 1.1 (pág.17) DFD 3 (pág. 20) DFD 1.2 (pág. 17) DFD 3.2 (pág. 21) DFD 1.3 (pág. 18) DFD 4 (pág. 21) DFD 1.4 (pág. 18) DFD 4.1 (pág. 22) DFD 1.6 (pág. 19) DFD 4.2 (pág. 22) DFD 1.6.4 (pág. 19) DFD 4.3 (pág. 23) 9. Modelo de datos (pág. 24) 10. Especificación de la interfaz del usuario (pág. 25) 11. Diccionario de datos (pág. 32)

Diag. Contexto (pág. 32) DFD 2 (pág. 55) Datos simples (pág. 86) DFD 0 (pág. 33) DFD 3 (pág. 59)

DFD 1 (pág. 37) DFD 3.2 (pág. 62) DFD 1.1 (pág.40) DFD 4 (pág. 67) DFD 1.2 (pág. 42) DFD 4.1 (pág. 68) DFD 1.3 (pág. 45) DFD 4.2 (pág. 70) DFD 1.4 (pág. 47) DFD 4.3 (pág. 74) DFD 1.6 (pág. 50) DFD 4.3.3 (pág. 77)

DFD 1.6.4 (pág. 52) Datos compuestos (pág. 83)

Page 3: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 1/88

I. ÁMBITO Y ALCANCE.

• Identificación o Nombre. o Versión.

El sistema que se va a exponer se denomina [email protected]. Se trata de la versión 2.0, ya que existe un prototipo activo de la aplicación actualmente. • Breve descripción del sistema y del software que se va a desarrollar. Se trata de un portal educativo para ofrecer servicios y contenidos que contribuyan a la mejora del sector educativo. El sistema forma parte de otro de un ámbito superior denominado PLUMIER, que pretende la integración de las Tecnologías de la Información y de las Comunicaciónes(TICS) en el proceso educativo en la Región, de forma que toda la comunidad educativa posea los conocimientos necesarios para vivir y trabajar en la sociedad de la información, erradicando el analfabetismo tecnológico, eliminando la distancia como barrera en el sistema educativo y prestando especial atención a las personas discapacitadas. El software que se va a desarrollar corresponde con un prototipo ampliado de la antigua aplicación (www.educarm.es) en el que se incluirán servicios de atención de inicidencias no triviales que serán solicitadas a un CAP (Centro de Apoyo al Plumier) y de una gestión de cursos que podrán seguir los docentes para mejora de su formación profesional. Además, el propósito del sistema es más amplio, ya que aborda la información institucional de Murcia, centros, nuevas tecnologías, programas de formación del profesorado, ayudas e iniciativas comunitarias. Objetivos del desarrollo (Proyecto):

o Qué hará el sw/sistema Básicamente el sistema provee un acceso a todo tipo de usuarios que se conecten al portal, que serán capaces de descargarse material didáctico, noticias de la región o material que sea de su incumbencia de acuerdo a lo ya dicho. Además tendrá un acceso restringido para el caso de usuarios docentes y usuarios administradores para gestión de foros, tablones de anuncios, áreas web, y permisos de administración por parte de los últimos. Para una mayor formación del profesorado, se hace disponible una sección de aula virtual que tendrá un acceso desde el área restringida del personal docente y administrativo en el que se promueven cursos de formación a los que los docentes podrán preinscribirse para en el caso de ser admitidos, tengan disponible un tutor que corrija prácticas que harán, de acuerdo a las restricciones de matriculación que veremos. Otro factor importante es el Centro de Apoyo al Plumier que ayudará a los responsables de medios informáticos (RMI), de las incidencias informáticas no triviales y que nuestro sistema será capaz de almacenar todas las incidencias para conclusiones futuras de rendimiento del portal. o Qué no hará el sw/sistema El sistema no implementará ningún servidor de mensajería, sino que hará uso de las interfaces que se le proporcionan para actuar a modo cliente, no garantiza tiempo de actualización a la hora de actualizar sus almacenes, principalmente en le caso de respuestas de corrección de prácticas o de resolución de incidencias. El sistema no proporcionará suscripción a menos que entidades de mayor peso lo determinen. Tampoco evaluará

Page 4: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 2/88

comunicación externa al portal entre las entidades que lo utilicen. Los cursos serán destinados únicamente a docentes, no siendo posible que administradores y otros usuarios tengan la posibilidad de realizar tales cursos. Tras la aprobación de un determinado curso, el sistema no se responsabiliza de la gestión de correo postal que será enviado al docente afortunado por parte del administrador del curso. Beneficios esperados del desarrollo. Oportunidad del producto.

Los beneficios esperados del desarrollo se estiman que sean bastante buenos debido a la buena implantación de la primera versión y la necesidad de otra. Los servicios de las inicidencias por parte de los centros, proporcionan una mayor simplicidad a la hora de gestionar el software por parte de los RMIs ya que en caso de no ser solucionado, será enviado a una entidad superior destinada por cada CPR, el Centro de Apoyo a Plumier (CAP). Por otro lado, la gestión de un Aula Virtual, proporcionará conocimientos unánimes y estudiados para el nuevo sector educativo que garantizarán sin desplazamiento físico un mayor nivel cultural de la región. Debido a todo esto, la oportunidad del desarrollo del sistema, no puede ser más idóneo para éste nuevo milenio de las tecnologías de la información.

Identificar los lugares de explotación (Presentes y futuros): Los lugares de explotación de este sistema no van más allá de toda la Comunidad Autónoma de la Región de Murcia, para que los docentes dados de alta y adscritos a los CPRs tengan una formación contínua , mediante el desarrollo de cursos. Por otro lado debido a que se queda abierto a internet está abierto a la información de noticias, recursos didácticos, opiniones, software de libre distribución, etc. El comprador del proyecto y promotor es la CARM (Comunidad Autónoma de la Región de Murcia) siendo subvencionado por esta, los usuarios que pueden tener acceso a él son por un lado todo todos los usuarios con acceso a internet (debido a su disponibilidad en internet) más la parte de autenticación en la que se habrán dado de alta previamente en el sistema, tales como administradores y docentes, disfrutando de más funcionalidad del sistema a modo de ejemplo se citan foros , tablones de anuncios, sección administrativa del portal (para adminsistradores), seguimiento de cursos, notificación de incidencias al CAP,etc. Las páginas del portal están destinadas a la participación de la comunidad educativa, instituciones, centros, profesorado y asociaciones de padres, madres y alumnos/as de Murcia. Propósito del ERS: El propósito de este documento que se ha realizado mediante el proceso ASI de Metrica 3, ayudándonos de una herramienta CASE (System Architect 2001), se debe a un paso de ingeniería inversa para poder determinar cuales eran los modelos de datos y flujo de información para poder ampliar la funcionalidad del sistema, validándolo mediante el prototipo pertinente y posteriormente realizado con el cliente y hacer un paso de reingeniería del sistema para esta segunda versión. El contenido del ERS, constará de todos los puntos indicados en el índice de la memoria y está orientado a una práctica de la asignatura.

Page 5: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 3/88

El mantenimiento del portal será llevado a cabo por miembros de la CARM , llevando a cabo mejoras de aquellos aspectos más frecuentemente servidos a los usuarios y establecer una interacción más cómoda, eficiente, sencilla ( El contenido HTML puede variar en enlaces, etc. Así como mejorar motores de búsqueda, recursos multimedia, calidad de tutoriales y unidades didáticas, etc. O bien solución a errores en el portal no detectados, pudiendo dar de alta nuevas versiones del portal.

Page 6: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 4/88

II. CATÁLOGO DE REQUISITOS.

Haremos distinción de los requisitos por parte del acceso a los recursos documentales como para la gestión de ellos. Tendremos tres tipos de prioridad: alta (a), media (m) y baja (b). I. ACCESOS A SERVICIOS Y USUARIOS

- 1.1. (a) Habrán tres tipos de usuarios: usuarios públicos, usuarios administradores y usuarios docentes.

- 1.2. (a) Los usuarios públicos no podrán acceder al área restringida. - 1.3. (a) Los usuarios docentes tendrán acceso a sus áreas restringidas bajo previa

autenticación. - 1.4. (a) Los usuarios docentes tendrán acceso a listas de distribución, solicitando

su admisión al administrador de la lista. - 1.5. (a) Los usuarios docentes tendrán acceso a un espacio de almacenamiento

con cuota donde pueda subir páginas. - 1.5. (b) Los usuarios prodrán ampliar el espacio de almacenamiento de cuota

pidiéndolo previamente al administrador que lo creó. Nota del profesor. Dos requisitos con el mismo identificador, no es posible.

- 1.6. (a) Los usuarios docentes tendrán acceso a un sistema de gestión de correo con dominio de correo educarm.es.

- 1.7. (a) Para acceder al área restringida hay que verificarse con un login y un password único para cada usuario.

- 1.8. (a) Los usuarios docentes tendrán acceso a foros para consulta y participación dando respuestas.

- 1.9. (a) Los usuarios docentes tendrán acceso a tablones de anuncios para añadir anuncios.

- 1.10. (a) Los usuarios docentes tendrán acceso al aula virtual. - 1.11. (a) Los usuarios administradores tendrán las mismas posibilidades que los

docentes y además la gestión de los recursos que administra. - 1.12. (a) En el sistema habrá varios tipos de administradores: de cursos, de

noticias, de recursos didácticos, de listas de distribución, de usuarios, de foros y de tablón de anuncios.

- 1.13. (m) Los usuarios docentes tendrán posibilidad de cambiar su clave de acceso al área restringida.

- 1.14. (b) En la página principal habrá un link al acceso del área restringida. - 1.15. (b) Habrá un enlace a una página web por cada CPR para informar de

cursos, seminarios y proyectos. II. GESTIÓN DE RECURSOS DOCUMENTALES Y AULA VIRTUAL

- 2.1. (a) Los recursos se dividirán en noticias, foros de discusión, recursos didácticos, actividades de formación del profesorado (aula virtual) y gestión de los usuarios.

2.2. ACCESO

- 2.2.1. (m) El portal deberá de proporcionar acceso a los recursos de

Page 7: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 5/88

interés organizados por grupos temáticos: unidades didácticas, enlaces de interés, presentaciones multimedia, opiniones, software libre, tablón de anuncios, manuales, diccionarios, biblioteca virtual, etc. 2.2.2. NOTICIAS

- 2.2.2.1. (a) Podrán ser leídas por todo tipo de usuario, sin necesidad de ser docente ni administrador.

- 2.2.2.2. (b) Serán publicadas en la página principal, de la cual podrá existir algún enlace por cada noticia para verla más a fondo, y un solo enlace en la página para acceder a la búsqueda de noticias en el historial de noticias.

2.2.3. FOROS DE DISCUSIÓN

- 2.2.3.1. (a) Podrán participar los usuarios docentes y administradores accediendo desde el área restringida.

2.2.4. RECURSOS DIDÁCTICOS

- 2.2.4.1. (m) Se dividirán en dos tipos: unidades didácticas y presentaciones multimedia.

- 2.2.4.2. (m) Las unidades didácticas vendrán en formato de ficheros de texto o presentación (por ejemplo PowerPoint o similar) y las presentaciones multimedia vendrá en formato de video, sonido o imagen.

- 2.2.4.3. (b) Serán accesibles a partir de la página principal, siendo público para todo usuario.

- 2.2.4.4. (b) Serán un conjunto de archivos descargables desde la página.

2.2.5. ACTIVIDADES DE FORMACIÓN DEL PROFESORADO

(AULA VIRTUAL) - 2.2.5.1. (a) Será accesible solo a partir del área restringida (es decir,

solo para usuarios docentes y administradores). - 2.2.5.2. (a) Está formado por un conjunto de cursos virtuales ofrecidos

por el administrador de cursos. - 2.2.5.3. (a) El estado del curso pasa a cancelado si no se inscriben un

número mínimo de alumnos (5) o por alguna otra causa que determine el administrador de cursos.

- 2.2.5.4. (a) Un curso virtual está compuesto por temas, que formará de la parte teórica del curso junto con una parte práctica.

- 2.2.5.5. (a) Un curso puede estar en los estados de inscripción, matriculación, empezado y terminado (en tal orden).

- 2.2.5.6. (m) Los usuarios docentes y administradores tendrán acceso a una lista de cursos ofertados.

- 2.2.5.7. (m) Cada curso que aparece en la lista de cursos ofertados tendrá un link que le llevará a visualizar información del curso y un enlace a la realización de la preinscripción.

2.2.5.9. PREINSCRIPCIÓN

- 2.2.5.9.1. (a) Se debe permitir a los usuarios docentes y administradores realizar la preinscripción en un curso que no haya

Page 8: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 6/88

empezado, ni terminado, ni cancelado ni en proceso de matriculación. - 2.2.5.9.2. (a) Para realizar la preinscripción el usuario debería de ver

una lista de criterios válidos, con la prioridad asociada a cada uno, y escoger los que posea. Además deberá de adjuntar datos personales como su nombre y NIF.

- 2.2.5.9.3. (a) Cuando llegue una fecha dada por el administrador del curso, terminará el estado de preinscripción (con lo que no se permitirá más preinscripciones), y dos días después se publicará una lista con el número de personas admitidas (en el mismo enlace donde se realizó la preinscripción) si el número de alumnos supera el mínimo, por el contrario se publicará un mensaje de cancelación del curso.

- 2.2.5.9.4. (m) Durante la preinscripción deberá de aparecer un mensaje indicando al usuario que la matriculación podrá implicar una posible justificación de dichos criterios.

2.2.5.10. MATRICULACIÓN

- 2.2.5.10.1. (a) A partir de la publicación de la lista de admitidos comienza el estado de matriculación hasta la fecha de inicio que indique el administrador.

- 2.2.5.10.2. (a) Un usuario solo puede matricularse de 5 cursos como máximo por año.

- 2.2.5.10.3. (a) Un usuario que después de matricularse en un curso no lo realizara, será penalizado no permitiéndosele la matriculación a ningún curso en el año siguiente.

- 2.2.5.10.4. (m) Cuando un usuario se matricule y llegue la fecha tope de matriculación, se le enviará un email (en la dirección de su cuenta de educarm.es) con un login y un password.

2.2.5.11. EN DESARROLLO

- 2.2.5.11.1. (a) Una vez se llegara a la fecha tope de matriculación (fecha de inicio), el estado del curso pasa a ser empezado.

- 2.2.5.11.2. (a) Cuando un usuario se autentica en su área restringida, deberá de tener un enlace al Aula Virtual, donde habrá un listado de cursos donde éste se ha matriculado.

- 2.2.5.11.3. (a) Cuando un usuario quiera entrar a un curso, antes deberá de introducir el login y el password que recibió en la etapa de matriculación.

- 2.2.5.11.4. (a) Cada curso tiene un foro de discusión asociado moderado por el tutor, al que el usuario debidamente autenticado puede acceder.

- 2.2.5.11.5. (m) Cuando un usuario acceda al curso se encontrará con un escritorio virtual, donde tendrá el trabajo hecho hasta ese momento (ficheros generados) y el desarrollo actual del curso (ficheros colgados por el administrador).

2.2.5.12. FINALIZADO

- 2.2.5.12.1. (m) Se enviará por correo electrónico (en el dominio educarm.es) a cada alumno del curso un mensaje indicando la finalización del curso y la calificación final.

Page 9: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 7/88

2.3. ADMINISTRACIÓN

- 2.3.1 (a) Se dispondrán de operaciones de alta, baja, modificación, publicación y consulta para la gestión de estos recursos.

- 2.3.2. (a) Las operaciones de alta, baja, modificación, publicación y consulta (este último en los foros y aula virtual) solo podrán ser usados desde el área restringida, y además solo podrán utilizar el alta, baja, modificación y publicación los correspondientes administradores.

2.3.3. NOTICIAS

- 2.3.3.1. (a) Su publicación será solicitado por un administrador de noticias al administrador regional de noticias, este último decidirá si ponerla o no, o también dar de baja noticias.

- 2.3.3.2. (a) Toda noticia publicada o dada de baja se encontrará en un Historial de noticias apto para búsquedas.

- 2.3.3.3. (m) Una noticia tiene una fecha límite, una vida máxima de un mes.

- 2.3.3.4. (m) La página tendrá un número limitado de noticias dando de baja a la noticia más antigua si no queda espacio. El número máximo de noticias será de 15. 2.3.4. FOROS DE DISCUSIÓN

- 2.3.4.1. (a) Cada foro será dado de alta, de baja y administrado por un usuario administrador.

- 2.3.4.2. (a) El administrador del foro valida las respuestas de los usuarios que acceden a él, decidiendo su publicación o no (baja), pudiendo enviar algún mensaje a tal usuario para notificárselo.

- 2.3.4.3. (m) Habrá un número máximo participaciones (de respuestas) publicadas en la página del foro (de unos 100), las más antiguas serán dadas de baja. 2.3.5. RECURSOS DIDÁCTICOS

- 2.3.5.1 (a) La inclusión de un recurso será solicitado por un administrador de recursos didácticos al administrador regional de recursos didácticos, quien decidirá la dada de alta y de baja de estos.

- 2.3.5.2. (m) Se presentarán los recursos didácticos por categorías (primero por cursos, después por tipo (unidades didácticas y presentaciones multimedia), luego por asignaturas y apartados de estas a la que pertenecen y por último por importancia (calculada a partir de votaciones que podrán hacer voluntariamente los usuarios)).

- 2.3.5.3. (b) Se presentará un ranking de recursos didácticos más solicitados.

2.3.6.ACTIVIDADES DE FORMACIÓN DEL PROFESORADO

(AULA VIRTUAL) 2.3.6.1. SOLICITUD DEL CURSO AL ADMINISTRADOR DE

CURSOS - 2.3.6.1.1. (a) Cualquier usuario docente o administrador podrá ser el

tutor del curso.

Page 10: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 8/88

- 2.3.6.1.2 (a) El tutor de un curso será el que lo administre, proporcionando los temas y prácticas correspondientes a cada curso.

- 2.3.6.1.3. (a) El usuario administrador (tutor) podrá subir material didáctico correspondiente a cada tema en formato de fichero de texto (pdf, doc, html o similar).

- 2.3.6.1.4. (a) Un usuario que quiera impartir un curso deberá solicitar al administrador de cursos (único en cada CPR) la puesta en marcha de un curso. Para ello deberá de enviar la información del curso (ver descripción de cursos).

- 2.3.6.1.5. (a) El usuario tutor que gestiona el curso tendrá acceso al curso a partir de su área restringida.

- 2.3.6.1.6. (a) Para poder entrar en el curso, el usuario administrador del curso deberá autenticarse con el login y password proporcionados por el administrador de cursos.

- 2.3.6.1.7. (a) El tutor solo podrá administrar el foro correspondiente y subir material.

- 2.3.6.1.8. (m) Un mismo usuario puede ser tutor de muchos cursos. - 2.3.6.1.9. (m) El administrador de cursos dará de alta al curso

solicitado en la lista de cursos ofertados, si él lo cree conveniente. - 2.3.6.1.10. (m) Cada curso tendrá asociado una cuota de espacio

(expandible previa solicitud al administrador de cursos). - 2.3.6.1.11. (m) Si el curso ha sido seleccionado, el administrador de

cursos enviará al correspondiente tutor un login y un password. A partir de entonces el usuario tutor se convertirá en un usuario administrador.

- 2.3.6.1.12. (m) El usuario administrador (tutor) deberá de identificar cada fichero con cada tema y práctica numerados con números consecutivos (1, 2, 3,…).

2.3.6.2. DESCRIPCIÓN DE CURSOS - 2.3.6.2.1. (a) Cada curso tendrá como información un nombre, una

descripción, un ámbito, un programa de teoría y prácticas, una fecha de inicio y duración, un nombre y email del tutor y lista de criterios de admisión con la prioridad asociada.

- 2.3.6.2.2. (a) El nombre será único de entre todos los cursos. - 2.3.6.2.3. (a) Los datos del tutor (nombre y email) deben de estar en la

base de datos del sistema. - 2.3.6.2.4. (a) El ámbito puede ser CPR (para cursar solo los del mismo

CPR) o regional (para cursarse en toda la región). - 2.3.6.2.5. (a) Los criterios que aparecen en una lista de criterios de

admisión pertenecen al conjunto de criterios válidos en el sistema. - 2.3.6.2.6. (a) En el programa de prácticas deberá de haber una práctica

por cada tema. - 2.3.6.2.7. (m) La descripción deberá de explicar la motivación del

curso y los objetivos. - 2.3.6.2.8. (m) El programa de teoría debe de ser un conjunto de temas

numerados del 1 a N, con N número finito, con hipervínculos entre los apartados de los temas.

2.3.6.3. PREINSCRIPCIÓN

Page 11: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 9/88

- 2.3.6.3.1. (a) El administrador de cursos deberá de seleccionar a los alumnos, y en un plazo de un día publicarla en el mismo enlace que hay del curso en la lista de cursos ofertados.

- 2.3.6.3.2. (a) El administrador de cursos debe cancelar el curso si el número de preinscritos es inferior al mínimo.

- 2.3.6.3.3. (a) Llegada la fecha tope de preinscripción, el administrador de cursos recibirá las preinscripciones del curso correspondiente.

- 2.3.6.3.4. (m) El administrador de cursos dará una fecha tope de preinscripción, anterior de la fecha de inicio.

- 2.3.6.3.5. (m) El administrador de cursos publicará la preinscripción en el link del curso, con el listado de criterios de admisión y prioridad proporcionados por el tutor del curso (que previamente el administrador de curso debería de revisarlos).

2.3.6.4. MATRICULACIÓN

- 2.3.6.4.1. (a) El administrador de cursos irá recibiendo las matrículas, comparándolas con los aceptados e indicando al sistema que genere un enlace al curso en el área restringida de cada usuario alumno.

- 2.3.6.4.2. (m) La fecha tope de matriculación será el día antes de la fecha de inicio del curso.

2.3.6.5. EN DESARROLLO

- 2.3.6.5.1. (a) Llegada la fecha de inicio, se deberá de dar de baja al curso en cuestión en la lista de cursos ofertados.

- 2.3.6.5.2. (a) Cuando llegue la fecha tope del tema se publicará la práctica correspondiente a ese tema.

- 2.3.6.5.3. (a) Cuando llegue la fecha tope de la práctica se publicará el tema siguiente, así consecutivamente hasta el fin del curso.

- 2.3.6.5.4. (a) La fecha tope de la última práctica no deberá sobrepasar la suma de la fecha de inicio más la duración.

- 2.3.6.5.5. (a) Una práctica constará de un conjunto de ejercicios. - 2.3.6.5.6. (a) Los ejercicios pueden ser de desarrollo o de tipo test. - 2.3.6.5.7. (a) Si los ejercicios son de tipo test, se evaluarán

automáticamente en el sistema con las soluciones adjuntadas por el tutor.

- 2.3.6.5.8. (a) El tutor tendrá privilegios de administración sobre el foro asociado al curso.

- 2.3.6.5.9. (a) Cada ejercicio y cada práctica tendrán un peso en puntos. - 2.3.6.5.10. (a) Cuando se corrija un ejercicio, se remite al estudiante

con la calificación y con las soluciones si era tipo test y con los comentarios del tutor si era de desarrollo.

- 2.3.6.5.11. (m) El tutor dará una fecha tope para cada tema y práctica - 2.3.6.5.12. (m) Debe cumplirse que

fechaTope(temaX)<fechaTope(practicaX), y que fechaTope(temaX)<fechaTope(temaX+1), con X perteneciente a {1,2,3…}.

- 2.3.6.5.13. (b) Si el ejercicio no está aprobado se concederá un intento más dentro del plazo que establezca el tutor.

2.3.6.6. FINALIZADO

Page 12: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 10/88

- 2.3.6.6.1. (a) Cuando llegue la fecha tope (fecha de inicio más duración), el curso pasa al estado de finalizado.

- 2.3.6.6.2. (a) Si un matriculado ha finalizado con éxito el curso se le enviará por correo postal un certificado de aprovechamiento correspondiente, firmado por el tutor del curso.

- 2.3.6.6.3. (a) Cuando el tutor lo crea conveniente se enviará a todos los matriculados un correo a cada alumno (por el dominio educarm.es) el mensaje de finalización del curso y la calificación final.

- 2.3.6.6.4. (a) Un curso se ha finalizado con éxito para un alumno siempre que su calificación final sea mayor o igual a 5.

- 2.3.6.6.5. (m) Cuando esté finalizado el curso, no se permitirá la entrega de prácticas, ni subida de material. El foro puede seguir abierto.

III. SISTEMA DE GESTIÓN DE INCIDENCIAS (CAP, Centro de Apoyo al plumier)

- 3.1. (a) El sistema proveerá de servicio de incidencias. - 3.2. (a) Habrán un técnico por cada CPR y dos de apoyo. - 3.3. (a) Cada centro tendrá un docente denominado RMI que es el encargado

de crear la incidencia. - 3.4. (a) El docente RMI es un tipo de usuario administrador (dar de alta

incidencias en el CAP). - 3.5. (a) La notificación de incidencias se hará rellenando una ficha (dar de

alta). La ficha tendrá asociado un RMI, una descripción de la avería, una fecha de alta, un estado (pendiente, en trámite, resuelta, cancelada), un centro y un CPR.

- 3.6. (a) Después de resolver una incidencia (dar de baja), se le asociará la causa de la avería y el tiempo de respuesta (tiempo transcurrido desde el alta hasta la baja).

- 3.7. (m) Se debe de permitir memorizar las causas de averías más frecuentes, su localización geográfica y el tiempo de respuesta a éstas.

Page 13: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 11/88

III. GLOSARIO DE TÉRMINOS.

Algunas definiciones para entender el sistema son: Aula Virtual: Se encarga de la gestión, de forma individualizada, de cursos de formación para docentes de forma remota por medio de Internet. CAP: Centro de Apoyo al Plumier. Se encarga de liberar a los docentes de la gestión de las incidencias informáticas no triviales. CARM: Comunidad Autónoma de la Región de Murcia. Centro: Cualquier centro educativo perteneciente a un CPR. CPR: Centro de Profesores y Recursos. Se encarga de gestionar los recursos formativos, pedagógicos y didácticos de una zona geográfica determinada. Curso Virtual: Curso de formación para docentes impartido en el Aula Virtual. Docente: Persona dedicada a impartir enseñanza en un centro. Incidencia informática (incidencia): Fallo informático. Listas de Distribución: Listas de correo donde una persona incluida en ella puede enviar un mensaje, y ese mensaje llegará a todos los que está en esa lista. Matriculación: Señal que se da para que sepan que se está apuntado a un curso. PLUMIER: El proyecto de ámbito superior al que pertenece este sistema. Preinscripción: Señal que se da para que sepan que se quiere apuntar a un curso. Recurso didáctico: Material para el apoyo a la enseñanza. RMI: Responsable de Medios Informáticos. Docente asociado a cada centro que recibe todas las incidencias informáticas producidas en tal centro.

Page 14: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 12/88

IV. CATÁLOGO DE NORMAS. El sistema está sujeto a las siguientes normas: - La Ley Orgánica 15/1999 de Protección de Datos de Carácter Personal (LOPD), impone diversas obligaciones a todas las empresas y profesionales que posean bases de datos con datos de carácter personal, para nuestro sistema [email protected] son tales como los datos de las cuentas de cada usuario docente y administrador registrado en el sistema. Tiene tres principales obligaciones tales como notificar ante la Agencia de Protección de Datos todos los ficheros que contengan datos de carácter personal, adecuar la actividad de la empresa a las obligaciones establecidas para recabar, tratar y comunicar datos de carácter personal, y elaborar el Documento de Seguridad obligatorio (Real Decreto 994/1999), para nuestro sistema aquellos usuarios registrados tendrán que autorizar expresamente la publicación o comunicación de datos de sus cuentas. - También sería de utilidad el Reglamento de Medidas de Seguridad (RMS) (BOE no. 151 1999). Referencia en Real Decreto 994/1999, de 11 de junio, por el que se aprueba el Reglamento de medidas de seguridad de los ficheros automatizados que contengan datos de carácter personal (RMS). BOE 151/1999. - LSSI: El portal [email protected] see ajusta a las normas establecidas por la LSSI (mostrar dirección de los creadores del portal más directos así como un modo de contacto, etc.), para. Referencia en Ley 34/2002 de 11 de Julio, de servicios de la sociedad de la información y de comercio ectrónico (LSSI), BOE 166/2002. - Ley Orgánica 15/99 de 13 de Diciembre, de Protección de Datos de Carácter Personal. - Real Decreto 1332/94 de 20 de junio por el que se desarrollan algunos preceptos de la Ley Orgánica - Real Decreto 994/1999 de 11 de junio por el que se aprueba el Reglamento de Medidas de Seguridad de los Ficheros Automatizados que contengan Datos de Carácter Personal. - Real Decreto 195/2000 de 11 de febrero por el que se establece el plazo para implementar las Medidas de Seguridad de los Ficheros Automatizados previstas por el Reglamento aprobado por el R.D. 994/1999 de 11 de junio. - Sentencia del Tribunal Constitucional (Pleno) núm. 292/2000, de 30-11-00, sobre el recurso de inconstitucionalidad núm. 1463-2000, interpuesto por el Defensor del Pueblo, contra los arts. 21.1 y 24.1 y 2 de la Ley Orgánica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal. - Directiva 95/46/CE del Parlamento Europeo y del Consejo de 24 de octubre de 1995 relativa a la protección de las personas físicas en lo que respecta al tratamiento de datos personales y a la libre circulación de estos datos. Legislación relacionada: - Ley 34/2002 de 11 de Julio de Servicios de la Sociedad de la Información y Comercio Electrónico (LSSI). - Ley 32/2003 de 3 de Noviembre, General de Telecomunicaciones. - Directiva 2000/31/CE del Parlamento Europeo y del Consejo, de 8 de junio de 2000, relativa al comercio electrónico en el mercado interior (Directiva sobre el comercio electrónico).

Page 15: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 13/88

V. DESCRIPCIÓN GENERAL DEL ENTORNO TECNOLÓGICO.

Puesto que este es un software destinado al sistema educativo de la región de Murcia, y conociendo que últimamente muchas comunidades, incluida ésta, están migrando a software libre (ya se están cursando cursos de Linux a docentes de la región), recomendaríamos que se optimizase para este software. Pero como debemos de permitir el uso de este sistema desde fuera de la red de ordenadores del sistema educativo (por ejemplo, para el uso de éste en los hogares de los docentes) no podemos dejar a aparte el software de Microsoft®, el más usado sin lugar a dudas. Hemos de maximizar el uso de este software dando soporte a las plataformas más utilizadas. Puesto que se trata de una aplicación WEB, se debería de contratar a una empresa de diseño WEB para que realizase las páginas con que los usuarios interactuarán. Estas páginas deberán de estar optimizadas para los buscadores más usados hasta el momento, como Internet Explorer, Firefox y Netscape (sobre todo estos dos últimos en su versión Linux). Se recomienda la implementación interna del sistema en lenguaje Java, por ser uno de los lenguajes más adaptados y preparado para entornos WEB. Lo interesante de esto es que se puede elegir tanto un sistema Linux como Windows para procesarlo, por ser portable. Así se necesitaría como mínimo un Pentium III o AMD K7 800Mhz con 128 MB RAM para ejecutar con bastante eficiencia el sistema. Se podría usar un editor IDE de Java gratuito, como Eclipse o NetBeans. Para la implementación de la base de datos se podría usar Oracle 9i, por ser un SGBD (Sistema Gestor de Bases de Datos) muy reconocido mundialmente, por su seguridad y manejabilidad, pero con una licencia muy costosa. También se podría utilizar un SGBD gratuito como MySQL pero menos seguro. Dada la naturaleza de este sistema, recomendamos la primera opción por ser la más segura. Para ello sería conveniente instalar el servidor SQL en una máquina UNIX, así el factor seguridad estaría asegurado. En cuanto al servidor de la base de datos, deberá de tener una buena estrategia de copias de seguridad, un buen plan de prevención de catástrofes y ofrecer una redundancia de datos (como por ejemplo, usar un RAID1 o RAID10). El servidor que tenga el sistema en funcionamiento tendrá que estar conectado a una línea de Internet de alta prestaciones, rápida y segura, tales como GigaByte Ethernet, ATM o Frame Relay. Se podría operar sobre ella en modo túnel con Ipv6 o IPSec (en Ipv4) hacia el proveedor de Internet, y que la subred tenga un buen firewall. Para que esté siempre en funcionamiento tendrá que ser fácilmente recuperable de fallos del sistema. De igual forma se recomienda el uso de SAIs para proteger al servidor contra los cortes de electricidad y subidas de tensión.

Page 16: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 14/88

VI. CONTEXTO DEL SISTEMA.

Al sistema accederán 6 tipos de actores, tanto los Técnicos del CAP para resolver incidencias, el Servidor de Correo para comunicarnos con el correo exterior al sistema, Usuarios normales sin necesidad de autenticarse, Docentes que pueden hacer más que los Usuarios pero autenticándose, Administradores que hacen lo de los Docentes, pero algo más, y tutores, que gestionan los cursos del aula virtual.

Cabe mencionar que hemos usado la notación de Métrica3/SSADM para el planteamiento de los diagramas, ya que hemos realizado el análisis mediante Métrica3.

0. [email protected]

Servidor deCorreo

Técnicos del CAP

Usuarios

Administradores

Tutor

Docentes

Búsqueda

PeticiónCuentas

AutenticaciónDocente

AutenticaciónAdmin

EvalCurso

GestiónCurso

ResoluciónIncidencia

Incidencias

CorreoEnviado

Correo

OpDocente

EvalDocente

Consulta

OpAdmin

EvalAdmin

Page 17: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 15/88

VII. DIAGRAMA DE SUBSISTEMAS.

El Diagrama de subsistemas o DFD0 quedaría así: Como se puede observar, está compuesto por 4 subprocesos que se encarga, cada

uno, de una parte bien diferenciada del sistema. El propósito de cada proceso se puede leer en el diccionario de datos, aunque sus nombres ya lo dicen todo: Gestión de Recursos Documentales, Gestor de Incidencias, Administrar Usuarios y Gestor de Aula Virtual.

Cada subproceso está desacoplado pero a la vez en comunicación con los demás mediante almacenes del sistema. Al estar desacoplado, un proceso no espera a que termine otro para continuar, si no que dependen de sí solos para acceder a la base de datos, y se comunica con los demás mediante esos almacenes.

0. [email protected]

3

Administrar Usuarios

4

Gestor de Aula Virtual

1Gestor de Recursos

Documentales

2Gestor de Incidencias

Administradores

Servidor deCorreo

Técnicos del CAP

Usuarios

Tutor

Docentes

D USUARIO DELSISTEMA

D CORREOS

Búsqueda

EvalCuentaDocente

OpCuentaDocente

PeticiónCuentas

AutenticaciónDocente

AutenticaciónAdmin

OpRMIIncidencia

EvalRMIIncidencia

EvalAdminUsuarios

EvalDocenteCurso

EvalRecDocum

EvalAdminRecDocumentales

EvalAdminCursos

AccesoRecDocumental

ParticiparCurso

OpAdminCursos

OpAdminUsuarios

OpAdminRecDocumentales

EvalAdmin

OpAdmin

Consulta

EvalDocenteOpDocente

Correo

CorreoEnviado

Incidencias

ResoluciónIncidencia

GestiónCurso

EvalCurso

Page 18: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 16/88

VIII. MODELO DE PROCESOS

A continuación presentamos los subprocesos anteriores en detalle, explotados. El número y nombre de DFD coincide con el número y nombre del proceso que amplía:

DFD1. Gestor de Recursos Documentales

1. Gestor de Recursos Documentales

Servidor deCorreo

1.4Gestor de Recursos

Didácticos

1.3Gestor de Tablón de

Anuncios

1.2Gestor de Noticias

1.1Gestor de Foros de

Discusión

1.6Gestor de Correo

D USUARIO DELSISTEMA

D CORREOS

BúsquedaNoticias

BúsquedaRecursosDidácticos

ConsultaRecursos

ConsultaNoticias

EvalDocenteForos

EvalDocenteAnuncios

EvalDocenteCorreo

AccesoDocenteForos

AccesoDocenteTablonAnunc

AccesoDocenteCorreo

EvalAdminForos

EvalAdminNoticias

EvalAdminTablonAnunc

EvalAdminRecDidacticos

EvalAdminCorreo

OpAdminForos

OpAdminNoticias

OpAdminTablonAnunc

OpAdminRecDidacticos

OpAdminCorreo

CorreoEnviado Correo

Page 19: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 17/88

DFD1.1. Gestor de Foros de Discusión DFD1.2. Gestor de Noticias

1.1. Gestor de Foros de Discusión

1.1.3Validar Respuestas

1.1.4Extraer Administradores de

Foros de discusión

1.1.2Seguir Foro

1.1.5Participar en Foro

1.1.1Evaluar Respuestas

D ADMINISTRADORES DEFOROS

D USUARIO DELSISTEMA

D RESPUESTASFOROS

D FOROS

OpDocenteEntrarForo

OpAdminEntrarForo

OpDocenteRespuesta

OpDocenteConsultaForo

OpAdminConsultaForo

OpAdminRespuesta

OpAdminValidarRespuesta

EvalAdminForos

EvalDocenteForos

1.2. Gestor de Noticias

1.2.4Almacenar Nuevas Noticias

1.2.5Buscar Noticias

1.2.6Extraer Administradores de

Noticas

1.2.2Actualizar Noticias

1.2.3Mostrar Noticias

1.2.1Eliminar Noticias

D ADMINISTRADORESDE NOTICIAS

D USUARIO DELSISTEMA

D NOTICIAS

D NUEVASNOTICIAS

D NOTICIAS AELIMINAR

búsquedaNoticias

EvalAdminEliminaciónNoticias

OpAdminNuevasNoticias

OpAdminEliminaciónNoticias

OpAdminActualizacionNoticias ConsultaNoticias

Page 20: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 18/88

DFD1.3. Gestor de Tablón de Anuncios DFD1.4. Gestor de Recursos Didácticos

1.3. Gestor de Tablón de Anuncios

1.3.3Consultar Anuncios

1.3.2Validar Anuncio

1.3.4Extraer Administradores de

Anuncios

1.3.1Almacenar Nuevos Anuncios

D ADMINISTRADORES DETABLONES DE ANUNCIOS

D USUARIO DELSISTEMA

D ANUNCIOS SINVALIDAR

D TABLONES DEANUNCIOS

OpAdminValidaciónAnuncio

OpAdminNuevoAnuncio

EvalAdminValidaciónAnuncios

EvalAdminConsultaAnuncios

AccesoDocenteTablonAnunc

EvalDocenteAnuncios

1.4. Gestor de Recursos Didácticos

1.4.3Mostrar Recursos Didácticos

1.4.1Eliminar Recursos Didácticos 1.4.4

Buscar Recursos Didácticos

1.4.5Almacenar Nuevos Recursos

Didácticos

1.4.6Extraer Administradores de

Recursos Didácticos

1.4.2Actualizar Recursos

Didácticos

D ADMINISTRADORES DERECURSOS DIDÁCTICOS

D NUEVOS RECURSOSDIDÁCTICOS

D RECURSOSDIDÁCTICOS A

ELIMINAR

D USUARIO DELSISTEMA

D RECURSOSDIDÁCTICOS

BúsquedaRecursosDidácticos

EvalAdminEliminaciónRecDidacticos

EvalAdminBusquedaRecDidcOpAdminEliminarRecDidácticos

OpAdminNuevoRecursoDidáctico

OpAdminActualizarRecDidácticos

ConsultaRecursos

Page 21: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 19/88

DFD1.6. Gestor de Correo

DFD1.6.4. Administrar Lista de Distribución

1.6. Gestor de Correo

1.6.4Administrar Lista de Distribución

1.6.3Enviar Correos

1.6.1Recibir Correos

1.6.2Consultar Correos

Servidor deCorreo

D USUARIO DELSISTEMA

D CORREOS

EvalDocenteConsultaCorreoEvalAdminListasDistribución

EvalAdminConsultaCorreo EvalDocenteListasDistribución

OpAdminListasDistribución

OpAdminEnvíoCorreo

OpDocenteSolicitudListaDistrib

OpDocenteEnvíoCorreo

Correo

CorreoEnviado

1.6.4. Administrar Lista de Distribución

1.6.4.2Actualizar Listas de Distribución

1.6.4.4Extraer Administradores de Listas de

Distribución

1.6.4.1Almacenar Solicitudes de Listas de

Distribución

1.6.4.3Generar Correos

1.6.4.5Consultar Listas de Distribución

D ADMINISTRADORES DELISTAS DE DISTRIBUCIÓN

D USUARIO DELSISTEMA

D LISTAS DEDISTRIBUCIÓN

D SOLICITUDES DEADMISIÓN

D CORREOS

OpAdminValidaCorreoALD

EvalAdminEnvioCorreoALD

OpAdminActualizListaDistrib

OpAdminSolicitudListaDistrib

EvalAdminActualizaciónListasAdministración

EvalAdminConsultaListaDistribución

OpDocenteSolicitudListaDistribEvalDocenteListasDistribución

Page 22: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 20/88

DFD2. Gestor de Incidencias

DFD3. Administrar Usuarios

2. Gestor de Incidencias

Técnicos del CAP

2.5Aceptar Respuesta

Incidencias

2.4Enviar Incidencias

2.3Consultar Incidencias

2.2Actualizar Inciencia a

CAP

2.1Extraer Docentes RMID USUARIO DEL

SISTEMA

D TÉCNICOS CAP

D RMIs

D INCIDENCIASCAP

D CENTROS

OpRMINuevaIncidencia

OpRMIConsultaIncidencia

ResoluciónIncidencia

Incidencias

EvalRMIIncidencia

3. Administrar Usuarios

Usuarios

3.6Consultar Cuenta

3.5Salir del Sistema

3.4Cambiar Contraseña

3.3Consultar usuarios

3.2Actualizar Cuentas

Usuarios

3.1Autenticar Usuarios

Administradores Docentes

D USUARIO DELSISTEMA

D CORREOS

EvalAdminActualizacionCuentas

EvalAdminConsultaUsuarios

EvalAdminConsultaCuenta

OpAdminCambioContraseña

OpAdminActualizCuentas

OpDocenteCambioContraseña

OpDocenteActualizCuenta

AutenticaciónAdmin AutenticaciónDocentePeticiónCuentas

EvalCuentaDocente

Page 23: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 21/88

DFD3.2. Actualizar Cuentas Usuarios

DFD4. Gestor de Aula Virtual

3.2. Actualizar Cuentas Usuarios

3.2.2Modificar Estado Cuenta

3.2.3Extraer Administradores de

Usuarios3.2.1

Enviar Datos Nueva Cuenta

3.2.4Validar Datos Cuentas

Usuarios

D USUARIO DELSISTEMA

D ADMINISTRADORESDE USUARIOS

D CUENTAS AMODIFICAR

D CUENTASNUEVAS

D CUENTASMODIFICADAS

D CORREOS

OpAdminModificarCuenta

OpAdminCambioCuenta

PeticiónCuentas

OpDocenteActualizCuenta

EvalAdminActualizacionCuentas

4. Gestor de Aula Virtual

4.3Gestionar Desarrollo

Curso

4.2Gestionar Matriculación

4.1Gestionar

Preinscripción

Tutor

D PREINSCRIPCIONES

D USUARIO DELSISTEMA

D MATRICULADOS

D CURSOS

D CORREOS

EvalOfertaCursos

EvalDesarrolloCurso

DesarrolloCurso

MatriculaciónCurso

PreinscripciónCurso

EvalCurso

GestiónCurso

OpAdminCursos

ParticiparCurso

EvalAdminCursos

EvalDocenteCurso

Page 24: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 22/88

DFD4.1. Gestionar Preinscripción

DFD4.2. Gestionar Matriculación

4.1. Gestionar Preinscripción

4.1.2Mostrar Cursos

4.1.1Validar Solicitudes Cursos

D PREINSCRIPCIONES

D USUARIO DELSISTEMA

D CURSOS

PreinscripciónCurso

EvalOfertaCursos

4.2. Gestionar Matriculación

4.2.3Penalizar

4.2.1Admitir Alumnos

4.2.7Cancelar Cursos

4.2.2Extraer Administradores de

Cursos

4.2.6Consultar Matriculados

4.2.4Aceptar Matriculación y

cambios estados

4.2.5Enviar Autenticación

D PREINSCRIPCIONES

D USUARIO DELSISTEMA

D ADMINISTRADORESDE CURSOS

D ADMITIDOS

D CRITERIOSADMISIÓN

D MATRICULADOS

D CURSOS

OpAdminCambioEstadoCurso

OpAdminPenalización

OpAdminAdmisiónAlumnos

OpAdminCancelaciónCurso

EvalMatriculados

EvalAdmisión

MatriculaciónCurso

Page 25: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 23/88

DFD4.3. Gestionar Desarrollo Curso

DFD4.3.3. Desarrollar Curso

4.3. Gestionar Desarrollo Curso

4.3.3Desarrollar Curso

4.3.1Controlar Alumnos

4.3.2Gestionar Foro

Tutor

D MATRICULADOS

D TUTORES

D ALUMNOSCURSOS

D FOROS

D CURSOS

ControlDesarrolloTutor

EvalTutorEjerciciosEvalForoTutor

ControlForoTutor

EvalDesarrolloDocente

EvalForoDocente

AccesoCurso

ParticipaciónDesarrollo

ParticipaciónForo

EvalCurso

GestiónCurso

4.3.3. Desarrollar Curso

4.3.3.5Mostrar Notas

4.3.3.3Admitir Respuestas

4.3.3.6Evaluar Alumnos

4.3.3.2Mostrar Ejercicios

4.3.3.4Corregir Ejercicios

4.3.3.1Mostrar Temas D MATRICULADOS

D CALIFICACIONES

D NO OTRAOPORTUNIDAD

D RESPUESTASALUMNOS

D RESPUESTAS

D EJERCICIOS

D TEMAS

D CURSOS

D TUTORES

D ALUMNOSCURSOS

EvaluaciónAlumnosCorrecciónEjercicios

EvalNotas

EvalEjercicios

EvalTemas

Respuestas

Ejercicios

Temas

EvalTutorEjercicios

Page 26: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 24/88

IX. MODELO DE DATOS

Page 27: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 25/88

X. ESPECIFICACIÓN DE LA INTERFAZ.

A continuación se expone un prototipo del funcionamiento de las nuevas funcionalidades del sistema. Como es un prototipo, no implementa nada, sino que se verá un conjunto de páginas Web que muestren un interfaz esqueleto (esqueleto porque solo da lo importante, los diseñadores de las páginas serán los encargados de dar más vistosidad a estas páginas) con anotaciones de lo que debería de hacer. Esperamos que esto de una idea más cercana de lo que puede ser el sistema final.

Por lo tanto, se ha creado un conjunto de páginas Web prototipo con Microsoft® Office® Word® 2003 (por lo tanto, para verlas recomendamos el uso de Internet Explorer®), donde se muestra el esqueleto (una emulación) de las dos partes nuevas del sistema: gestor de incidencias y aula virtual.

Todo comienza por la página principal, la página index.htm:

Se puede ver que la página principal muestra las noticias nuevas, un buscador de

noticias, enlaces a recursos, comunicación,… y al área restringida. Si hacemos clic sobre este enlace se mostrará una página como esta (Área restringida.htm):

Page 28: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 26/88

Vemos que da la oportunidad de darse de alta a un docente (no está

implementado). Se podría ahorrar esto con que el sistema esté conectado a la base de datos del profesorado de la región. Para poder entrar hay que escribir un nombre y contraseña que solo tendrán los docentes (en este caso vale cualquiera) y pulsar entrar (Área restringida dentro.htm):

Aquí tenemos todos los servicios que un docente puede usar. En caso de ser un administrador, tendrá su enlace a todos los servicios que administra (Área restringida administración.htm):

Page 29: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 27/88

Vemos que puede administrar foros, tablón de anuncios, noticias, listas de distribución,… según lo que el sistema le permita. Además, si es un RMI, podrá entrar al enlace de gestionar incidencias (Área restringida incidencias.htm):

Vemos que se puede tanto consultar incidencias como enviar una incidencia. Esto se podría poner en páginas separadas o de esta forma. Tenemos varias condiciones para buscar una incidencia: por RMI, por fecha de alta, por estado, por centro, por CPR o por palabra clave. Se podría dar la elección de hacer una búsqueda con la conjunción de los datos insertados, con la disyunción o con una expresión al estilo de buscadores Web. Cuando se pulse el botón Buscar deberá de aparecer un listado de las concordantes (no implementado en los prototipos), y se podría dar la opción de modificar las incidencias que pertenezcan al RMI que está realizando la búsqueda. Para dar de alta una nueva incidencia basta con decir el estado de ésta y una descripción, ya que los demás datos lo puede coger el sistema accediendo a los datos del RMI de la base de datos. Volviendo a Área restringida dentro.htm, aún queda otra opción, y es la de entrar al aula virtual (clic en el último de los servicios) (Aula Virtual.htm):

Page 30: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 28/88

Tenemos las opciones de consultar los cursos ofertados y entrar a los cursos en desarrollo. Veamos lo primero (Aula Virtual cursos ofertados.htm):

Nos aparecerá un conjunto de cursos, con su nombre (más significativos que los que hay de ejemplo en este prototipo), ámbito (regional o del CPR del docente que está visualizando la página), y un link para ampliar información (Área restringida preinscripción.htm):

Page 31: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 29/88

Se dará información acerca del curso (descripción, fechas, duración, criterios para la preinscripción,…). Al dar a enviar, se entraría a otra página donde se dará rellenará un formulario relacionado con el curso y se enviará (no implementado). Como se indican en las notas, cuando pase la fecha tope de preinscripción esta página deberá de dejar de estar disponible, reemplazándose por otra que diga curso cancelado o una con una lista de admitidos. Para los docentes penalizados, al hacer clic sobre Enviar deberá de aparecer un mensaje de error. Volviendo a Aula virtual.htm, elegimos la otra opción, entrar a los cursos en desarrollo (Aula virtual cursos.htm):

Page 32: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 30/88

Nos aparecerá un conjunto de hasta 5 cursos (el máximo permitido), cada uno nos pedirá un login y password que solo los matriculados saben cual es, y un link a entrar al curso (Aula virtual dentro.htm):

Desde aquí se tendrá acceso a cada tema como un link a un fichero .pdf, .doc, .html,…, y al lado su correspondiente práctica, indicando la fecha tope de entrega en la cual desaparecerá el enlace a responder. En los prototipos hemos implementado un ejemplo de tipo test (Aula virtual test.htm):

Page 33: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 31/88

Tenemos los enunciados de cada pregunta y las respuestas, con un Box que se puede pulsar. Si no es un tipo test, debería de aparecer un explorador para subir un fichero, que será enviado a la zona del tutor. Para que los tutores realicen estos test deben de tener un link especial para ellos en los que pueda interactuar de forma sencilla con el sistema indicando: número de pregunta, pregunta, respuestas, respuesta correcta y puntuación. Todo ello se almacenará en la base de datos para la corrección automática (Aula virtual test respuesta.htm):

Por lo tanto, aparecerá la nota obtenida con el número de respuestas acertadas y las soluciones. Al volver, como se puede comprobar en los prototipos, volverá a la página Aula virtual dentro.htm, pero el link a responder desaparecer, para que el test solo se pueda realizar una sola vez.

Page 34: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 32/88

XI. DICCIONARIO DE DATOS.

Ahora se explicarán los flujos de datos, almacenes y procesos que componen todo nuestro sistema. Para hacerlo más legible se ordenará por su aparición en los distintos DFD.

También comentar que aquellos flujos que no tienen nombre (los únicos que salen o entran en almacenes) significan que están compuestos por una tupla completa del almacén, y por ello se obvian en este documento.

Diagrama de contexto

Nota del profesor. Os recuerdo que debéis usar el diccionario de datos de la herramienta que usamos en prácticas, System Archictect, para introducir la descomposición de los flujos de datos, las descripciones de los elementos de los diagramas, y las miniespecificaciones de los procesos primitivos. Dataflow: AutenticaciónAdmin From-symbol: Administradores [External] To-symbol: 0. [email protected] [Process] Data within flow: DNI + login + password Dataflow: AutenticaciónDocente From-symbol: Docentes [External] To-symbol: 0. [email protected] [Process] Data within flow: DNI + login + password Dataflow: Búsqueda From-symbol: Usuarios [External] To-symbol: 0. [email protected] [Process] Data within flow: [ BúsquedaNoticias | BúsquedaRecursosDidácticos ] Dataflow: Consulta From-symbol: 0. [email protected] [Process] To-symbol: Usuarios [External] Data within flow: [ ConsultaNoticias | ConsultaRecursos ] Dataflow: Correo From-symbol: Servidor de Correo [External] To-symbol: 0. [email protected] [Process] Data within flow: Emisor + Receptor + CuerpoMensaje Dataflow: CorreoEnviado From-symbol: 0. [email protected] [Process] To-symbol: Servidor de Correo [External] Data within flow: Emisor + [Receptor | CodigoLista] + CuerpoMensaje Dataflow: EvalAdmin From-symbol: 0. [email protected] [Process] To-symbol: Administradores [External]

Page 35: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 33/88

Data within flow: [ EvalAdminRecDocumentales | EvalAdminCursos | EvalAdminUsuarios ]

Dataflow: EvalCurso From-symbol: 0. [email protected] [Process] To-symbol: Tutor [External] Data within flow: [ EvalDocenteForos | EvalTutorEjercicios ] Dataflow: EvalDocente From-symbol: 0. [email protected] [Process] To-symbol: Docentes [External] Data within flow: [ EvalDocenteCurso | EvalRMIIncidencia | EvalRecDocum |

EvalCuentaDocente ] Dataflow: GestiónCurso From-symbol: Tutor [External] To-symbol: 0. [email protected] [Process] Data within flow: [ AccesoDocenteForos | ControlDesarrolloTutor ] Dataflow: Incidencias From-symbol: 0. [email protected] [Process] To-symbol: Técnicos del CAP [External] Data within flow: DNI + Hora-llegada+ Descripción + Centro + EstadoIncidencia + CPR Dataflow: OpAdmin From-symbol: Administradores [External] To-symbol: 0. [email protected] [Process] Data within flow: [ OpAdminRecDocumentales | OpAdminUsuarios | OpAdminCursos

] Dataflow: OpDocente From-symbol: Docentes [External] To-symbol: 0. [email protected] [Process] Data within flow: [ AccesoRecDocumental | OpCuentaDocente | OpRMIIncidencia | ParticiparCurso ] Dataflow: PeticiónCuentas From-symbol: Usuarios [External] To-symbol: 0. [email protected] [Process] Data within flow: Nombre + Apellidos + DNI + FechaNacimiento + Dirección +

DirecciónProfesional + login + password Dataflow: ResoluciónIncidencia From-symbol: Técnicos del CAP [External] To-symbol: 0. [email protected] [Process] Data within flow: Técnico + Código + causa

DFD0. [email protected]

Page 36: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 34/88

Process: Administrar Usuarios Purpose: Se encarga de la gestión de cuentas de usuarios, tanto la creación,

actualización, consulta y eliminación de ellas. También se encarga de la autenticación de los usuarios para el control de acceso al área restringida del sistema.

Process: Gestor de Aula Virtual Purpose: Se encarga de toda la gestión de los cursos virtuales, así como el soporte para

todas las etapas en la que pueden estar: preinscripción, matriculación, desarrollo, cancelación y finalización.

Process: Gestor de Incidencias Purpose: Se encarga de gestionar las incidencias que los RMI de cada centro da de alta:

la creación, la modificación, la búsqueda y la resolución y consulta de ellas por los técnicos.

Process: Gestor de Recursos Documentales Purpose: Se encarga gestionar el acceso y administración de los recursos documentales

del sistema: correo, listas de distribución, foros, recursos didácticos, tablones de anuncios y noticias.

Dataflow: AccesoRecDocumental From-symbol: [XOR Connector] To-symbol: Gestor de Recursos Documentales [Process] Data within flow: AccesoRecDocumental Dataflow: AutenticaciónAdmin From-symbol: Administradores [External] To-symbol: Administrar Usuarios [Process] Data within flow: DNI + login + password Dataflow: AutenticaciónDocente From-symbol: Docentes [External] To-symbol: Administrar Usuarios [Process] Data within flow: DNI + login + password Dataflow: Búsqueda From-symbol: Usuarios [External] To-symbol: Gestor de Recursos Documentales [Process] Data within flow: [ BúsquedaNoticias | BúsquedaRecursosDidácticos ] Dataflow: Consulta From-symbol: Gestor de Recursos Documentales [Process] To-symbol: Usuarios [External] Data within flow: [ ConsultaNoticias | ConsultaRecursos ] Dataflow: Correo From-symbol: Servidor de Correo [External]

Page 37: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 35/88

To-symbol: Gestor de Recursos Documentales [Process] Data within flow: Emisor + Receptor +CuerpoMensaje Dataflow: CorreoEnviado From-symbol: Gestor de Recursos Documentales [Process] To-symbol: Servidor de Correo [External] Data within flow: Emisor + [Receptor | CodigoLista] + CuerpoMensaje Dataflow: EvalAdmin From-symbol: [XOR Connector] To-symbol: Administradores [External] Data within flow: [ EvalAdminRecDocumentales | EvalAdminCursos |

EvalAdminUsuarios ] Dataflow: EvalAdminCursos From-symbol: Gestor de Aula Virtual [Process] To-symbol: [XOR Connector] Data within flow: EvalAdminCursos Dataflow: EvalAdminRecDocumentales From-symbol: Gestor de Recursos Documentales [Process] To-symbol: [XOR Connector] Data within flow: EvalAdminRecDocumentales Dataflow: EvalAdminUsuarios From-symbol: Administrar Usuarios [Process] To-symbol: [XOR Connector] Data within flow: EvalAdminUsuarios Dataflow: EvalCuentaDocente From-symbol: Administrar Usuarios [Process] To-symbol: [XOR Connector] Data within flow: EvalCuentaDocente Dataflow: EvalCurso From-symbol: Gestor de Aula Virtual [Process] To-symbol: Tutor [External] Data within flow: [ EvalDocenteForos | EvalTutorEjercicios ] Dataflow: EvalDocente From-symbol: [XOR Connector] To-symbol: Docentes [External] Data within flow: [ EvalDocenteCurso | EvalRMIIncidencia | EvalRecDocum | EvalCuentaDocente ] Dataflow: EvalDocenteCurso From-symbol: Gestor de Aula Virtual [Process] To-symbol: [XOR Connector] Data within flow: EvalDocenteCurso

Page 38: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 36/88

Dataflow: EvalRMIIncidencia From-symbol: Gestor de Incidencias [Process] To-symbol: [XOR Connector] Data within flow: EvalRMIIncidencia Dataflow: EvalRecDocum From-symbol: Gestor de Recursos Documentales [Process] To-symbol: [XOR Connector] Data within flow: EvalRecDocum Dataflow: GestiónCurso From-symbol: Tutor [External] To-symbol: Gestor de Aula Virtual [Process] Data within flow: [ AccesoDocenteForos | ControlDesarrolloTutor ] Dataflow: Incidencias From-symbol: Gestor de Incidencias [Process] To-symbol: Técnicos del CAP [External] Data within flow: DNI + Hora-llegada + Descripción + Centro + EstadoIncidencia + CPR Dataflow: OpAdmin From-symbol: Administradores [External] To-symbol: [XOR Connector] Data within flow: [ OpAdminRecDocumentales | OpAdminUsuarios | OpAdminCursos

] Dataflow: OpAdminCursos From-symbol: [XOR Connector] To-symbol: Gestor de Aula Virtual [Process] Data within flow: OpAdminCursos Dataflow: OpAdminRecDocumentales From-symbol: [XOR Connector] To-symbol: Gestor de Recursos Documentales [Process] Data within flow: OpAdminRecDocumentales Dataflow: OpAdminUsuarios From-symbol: [XOR Connector] To-symbol: Administrar Usuarios [Process] Data within flow: OpAdminUsuarios Dataflow: OpCuentaDocente From-symbol: [XOR Connector] To-symbol: Administrar Usuarios [Process] Data within flow: OpCuentaDocente Dataflow: OpDocente From-symbol: Docentes [External] To-symbol: [XOR Connector]

Page 39: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 37/88

Data within flow: [ AccesoRecDocumental | OpCuentaDocente | OpRMIIncidencia | ParticiparCurso ] Dataflow: OpRMIIncidencia From-symbol: [XOR Connector] To-symbol: Gestor de Incidencias [Process] Data within flow: OpRMIIncidencia Dataflow: ParticiparCurso From-symbol: [XOR Connector] To-symbol: Gestor de Aula Virtual [Process] Data within flow: ParticiparCurso Dataflow: PeticiónCuentas From-symbol: Usuarios [External] To-symbol: Administrar Usuarios [Process] Data within flow: Nombre + Apellidos + DNI + FechaNacimiento + Dirección +

DirecciónProfesional + login + password Dataflow: ResoluciónIncidencia From-symbol: Técnicos del CAP [External] To-symbol: Gestor de Incidencias [Process] Data within flow: Técnico + Código + causa Datastore: CORREOS Input flows coming from Gestor de Aula Virtual [Process] coming from Administrar Usuarios [Process] Update flows connected to Gestor de Recursos Documentales [Process] Data within store: @Emisor + @Receptor + @Hora-llegada + CuerpoMensaje + Estado-correo Datastore: USUARIO DEL SISTEMA Output flows going to Gestor de Incidencias [Process] going to Gestor de Recursos Documentales [Process] Update flows connected to Administrar Usuarios [Process] connected to Gestor de Aula Virtual [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD1. Gestor de Recursos Documentales

Process: Gestor de Correo Purpose: Se encarga de gestionar el correo y las listas de distribución del sistema.

Page 40: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 38/88

Process: Gestor de Foros de Discusión Purpose: Se encarga de gestionar el acceso y control de los foros. Process: Gestor de Noticias Purpose: Se encarga de gestionar el acceso y control de las noticias. Process: Gestor de Recursos Didácticos Purpose: Se encarga de gestionar el acceso y control de los recursos didácticos. Process: Gestor de Tablón de Anuncios Purpose: Se encarga de gestionar el acceso y control de los tablones de anuncios. Dataflow: AccesoDocenteCorreo To-symbol: Gestor de Correo [Process] Data within flow: AccesoDocenteCorreo Dataflow: AccesoDocenteForos To-symbol: Gestor de Foros de Discusión [Process] Data within flow: AccesoDocenteForos Dataflow: AccesoDocenteTablonAnunc To-symbol: Gestor de Tablón de Anuncios [Process] Data within flow: AccesoDocenteTablonAnunc Dataflow: BúsquedaNoticias To-symbol: Gestor de Noticias [Process] Data within flow: BúsquedaNoticias Dataflow: BúsquedaRecursosDidácticos To-symbol: Gestor de Recursos Didácticos [Process] Data within flow: BúsquedaRecursosDidácticos Dataflow: ConsultaNoticias From-symbol: Gestor de Noticias [Process] Data within flow: ConsultaNoticias Dataflow: ConsultaRecursos From-symbol: Gestor de Recursos Didácticos [Process] Data within flow: ConsultaRecursos Dataflow: Correo From-symbol: Servidor de Correo [External] To-symbol: Gestor de Correo [Process] Data within flow: Emisor + Receptor + CuerpoMensaje Dataflow: CorreoEnviado From-symbol: Gestor de Correo [Process] To-symbol: Servidor de Correo [External] Data within flow: Emisor + [Receptor | CodigoLista] + CuerpoMensaje

Page 41: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 39/88

Dataflow: EvalAdminCorreo From-symbol: Gestor de Correo [Process] Data within flow: EvalAdminCorreo Dataflow: EvalAdminForos From-symbol: Gestor de Foros de Discusión [Process] Data within flow: EvalAdminForos Dataflow: EvalAdminNoticias From-symbol: Gestor de Noticias [Process] Data within flow: EvalAdminNoticias Dataflow: EvalAdminRecDidacticos From-symbol: Gestor de Recursos Didácticos [Process] Data within flow: EvalAdminRecDidacticos Dataflow: EvalAdminTablonAnunc From-symbol: Gestor de Tablón de Anuncios [Process] Data within flow: EvalAdminTablonAnunc Dataflow: EvalDocenteAnuncios From-symbol: Gestor de Tablón de Anuncios [Process] Data within flow: EvalDocenteAnuncios Dataflow: EvalDocenteCorreo From-symbol: Gestor de Correo [Process] Data within flow: EvalDocenteCorreo Dataflow: EvalDocenteForos From-symbol: Gestor de Foros de Discusión [Process] Data within flow: EvalDocenteForos Dataflow: OpAdminCorreo To-symbol: Gestor de Correo [Process] Data within flow: OpAdminCorreo Dataflow: OpAdminForos To-symbol: Gestor de Foros de Discusión [Process] Data within flow: OpAdminForos Dataflow: OpAdminNoticias To-symbol: Gestor de Noticias [Process] Data within flow: OpAdminNoticias Dataflow: OpAdminRecDidacticos To-symbol: Gestor de Recursos Didácticos [Process] Data within flow: OpAdminRecDidacticos Dataflow: OpAdminTablonAnunc To-symbol: Gestor de Tablón de Anuncios [Process]

Page 42: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 40/88

Data within flow: OpAdminTablonAnunc Datastore: CORREOS Update flows connected to Gestor de Correo [Process] Data within store: @Emisor + @Receptor + @Hora-llegada + CuerpoMensaje + Estado-correo Datastore: USUARIO DEL SISTEMA Output flows going to Gestor de Foros de Discusión [Process] going to Gestor de Correo [Process] going to Gestor de Recursos Didácticos [Process] going to Gestor de Tablón de Anuncios [Process] going to Gestor de Noticias [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD1.1. Gestor de Foros de Discusión Process: Evaluar Respuestas Minispec or Description: PRE Nota del profesor. Ya que tanto las precondiciones como las postcondiciones

son condiciones a fin de cuentas, sería preferible expresarlas como tales, y no como “acciones”: de este modo, evitar usar verbos como “llegan”, “se enviarán”, etc.

Llegan opAdminRespuestas u opDocenteRespuestas con sus DNIs que aparecen en el almacén FOROS, junto con el Código del foro al que se envían las respuestas.

POST El usuario y el identificador del foro son válidos. Se enviarán las respuestas al almacén

respuestas anexando el DNI y el Código del foro con la Repuesta. Process: Extraer Administradores de Foros de discusión Minispec or Description: PRE Se leen datos de "USUARIO DEL SISTEMA" cuyo categoriaProf = Administrador y nivel = adForo POST Se escriben en el almacén "ADMINISTRADORES DE FOROS". Process: Participar en Foro Minispec or Description: PRE Llegan opAdminEntrarForo y opDocenteEntrarForo cuyos DNIs aparecen en almacén

"USUARIO DEL SISTEMA" con estado =activa y cuentaExpira = falso y cuentaPenalizada = null. Además contiene el Código del foro al cual quiere entrar.

Page 43: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 41/88

POST El usuario es válido. Se almacena su DNI en el foro en el que desea entrar. Process: Seguir Foro Minispec or Description: PRE Llegan OpAdminConsultaForo u opDocenteConsultaForo con sus DNIs que aparecen

en el foro correspondiente al Código llegado en el almacén FOROS. POST El usuario es válido. Se enviarán las respuestas del foro correspondiente a Código en

FOROS por EvalDocenteForos o por EvalAdminForos, según haya sido la entrada.

Process: Validar Respuestas Minispec or Description: PRE1 Llegan registros nuevos del almacen “RESPUESTAS FOROS”. POST1 Se envían al administrador todas las respuestas de los usuarios con foro del almacén

FOROS cuyo ADMINISTRADOR = DNI del administrador e identificador del foro de la respuesta coincide con el del foro en cuestión.

PRE2 Llegan opAdminValidarRespuestas con DNI que aparece en el almacén

"ADMINISTRADORES DE FOROS" y también aparece en el almacén FOROS como administrador del foro con Código llegado por el flujo de datos,

POST2 Se elimina de "RESPUESTAS FOROS" el registro que concuerda con Código y DNI

llegados del flujo opAdminValidarRespuestas, y se inserta la respuesta en el almacén FOROS.

Dataflow: EvalAdminForos From-symbol: [XOR Connector] Data within flow: EvalAdminForos Dataflow: EvalDocenteForos From-symbol: Seguir Foro [Process] Data within flow: EvalDocenteForos Dataflow: OpAdminConsultaForo To-symbol: Seguir Foro [Process] Data within flow: OpAdminConsultaForo Dataflow: OpAdminEntrarForo To-symbol: Participar en Foro [Process] Data within flow: PeticiónEntrarForo

Page 44: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 42/88

Dataflow: OpAdminRespuesta To-symbol: Evaluar Respuestas [Process] Data within flow: OpAdminRespuesta Dataflow: OpAdminValidarRespuesta To-symbol: Validar Respuestas [Process] Data within flow: OpAdminValidarRespuesta Dataflow: OpDocenteConsultaForo To-symbol: Seguir Foro [Process] Data within flow: OpDocenteConsultaForo Dataflow: OpDocenteEntrarForo To-symbol: Participar en Foro [Process] Data within flow: PeticiónEntrarForo Dataflow: OpDocenteRespuesta To-symbol: Evaluar Respuestas [Process] Data within flow: DNI + Respuesta Datastore: ADMINISTRADORES DE FOROS Output flows going to Validar Respuestas [Process] Update flows connected to Extraer Administradores de Foros de discusión [Process] Data within store: @DNI + login + password + DirCorreo + 1{Código}N Datastore: FOROS Update flows connected to Seguir Foro [Process] connected to Validar Respuestas [Process] connected to Participar en Foro [Process] Data within store: @Código + Administrador + (NombreCurso) + Descripción + 1{DNI}N + 0{DNI + Texto + Hora-llegada}MaxRespuestas Datastore: RESPUESTAS FOROS Input flows coming from Evaluar Respuestas [Process] Update flows connected to Validar Respuestas [Process] Data within store: @Código + @DNI + Texto Datastore: USUARIO DEL SISTEMA Output flows going to Extraer Administradores de Foros de discusión [Process] going to Participar en Foro [Process]

Page 45: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 43/88

Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección + DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD1.2. Gestor de Noticias Process: Actualizar Noticias Minispec or Description: PRE Llegan datos de "NOTICIAS A ELIMINAR" o "NUEVAS NOTICICIAS" y

opAdminActualizaciónNoticias con su DNI para validarlo con "ADMINISTRADORES DE NOTICIAS" (es decir, que está en este almacén).

POST Administrador válido. Se eliminan o almacenan en almacén NOTICIAS según vengan

de "NOTICIAS A ELIMINAR" o "NUEVAS NOTICICIAS" respectivamente. Process: Almacenar Nuevas Noticias Minispec or Description: PRE Llega opAdminNuevasNoticias junto con su DNI para validarlo con almacén

"ADMINISTRADORES DE NOTICIAS". POST Adminstrador válido. Se almacenan en el almacén NUEVAS NOTICIAS. Process: Buscar Noticias Minispec or Description: PRE Llegan peticiones de usuarios, administradores o docentes (estos dos últimos deberán de

jugar el rol de usuario normal en el sistema) para buscar noticias junto con palabra/s a buscar sobre una combinación no vacía de los siguientes campos de Noticias opcionales: (Código) +(Hora-llegada) +(Autor) +(Ámbito) +(Texto)

POST Se envían las noticias que concuerde con algún campo. Process: Eliminar Noticias Minispec or Description: PRE Llegan datos de noticias de opAdminEliminaciónNoticias a eliminar ( sus

identificadores) y se validan del almacén NOTICIAS. POST Se almacenan en el almacén NOTICIASAELIMINAR Process: Extraer Administradores de Noticas Minispec or Description: PRE

Page 46: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 44/88

Se leen datos de "USUARIO DEL SISTEMA" cuyo categoriaProf = Adminstrador y nivel = adNotic

POST Se escriben en el almacén "ADMINISTRADORES DE NOTICIAS". Process: Mostrar Noticias Minispec or Description: PRE Llegan peticiones de usuarios, administradores o docentes para mostrar noticias junto

con el Código de la noticia. POST Se envían las noticias que solicitan. Dataflow: ConsultaNoticias From-symbol: [XOR Connector] Data within flow: ConsultaNoticias Dataflow: EvalAdminEliminaciónNoticias From-symbol: Eliminar Noticias [Process] Data within flow: EvalAdminEliminaciónNoticias Dataflow: OpAdminActualizacionNoticias To-symbol: Actualizar Noticias [Process] Data within flow: OpAdminActualizacionNoticias Dataflow: OpAdminEliminaciónNoticias To-symbol: Eliminar Noticias [Process] Data within flow: OpAdminEliminaciónNoticias Dataflow: OpAdminNuevasNoticias To-symbol: Almacenar Nuevas Noticias [Process] Data within flow: OpAdminNuevasNoticias Dataflow: búsquedaNoticias To-symbol: Buscar Noticias [Process] Data within flow: BúsquedaNoticias Datastore: ADMINISTRADORES DE NOTICIAS Output flows going to Eliminar Noticias [Process] going to Actualizar Noticias [Process] going to Almacenar Nuevas Noticias [Process] Update flows connected to Extraer Administradores de Noticas [Process] Data within store: @DNI + Ámbito + login + password + DirCorreo

Page 47: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 45/88

Datastore: NOTICIAS Output flows going to Eliminar Noticias [Process] going to Buscar Noticias [Process] going to Mostrar Noticias [Process] Update flows connected to Actualizar Noticias [Process] Data within store: @Código + Hora-llegada + Autor + Ámbito + Texto Datastore: NOTICIAS A ELIMINAR Input flows coming from Eliminar Noticias [Process] Update flows connected to Actualizar Noticias [Process] Data within store: @Código Datastore: NUEVAS NOTICIAS Input flows coming from Almacenar Nuevas Noticias [Process] Update flows connected to Actualizar Noticias [Process] Data within store: @Código + Hora-llegada + Autor + Ámbito + Texto + DNI Datastore: USUARIO DEL SISTEMA Output flows going to Extraer Administradores de Noticas [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD1.3. Gestor de Tablón de Anuncios Process: Almacenar Nuevos Anuncios Minispec or Description: PRE Llega opAdminnuevoAnuncio junto con Nombre del tablón que aparece en almacén

"TABLONES DE ANUNCIOS" POST Tablón válido.Se almacena en ANUNCIOS Process: Consultar Anuncios Minispec or Description: PRE POST Se envían los datos de los anuncios a aquellos docentes y administradores que tengan

como Estado=Activa opr los dos flujos de salida correspondientes.

Page 48: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 46/88

Process: Extraer Administradores de Anuncios Minispec or Description: PRE Se leen datos de "USUARIO DEL SISTEMA" cuyo categoriaProf = Adminstrador y

nivel = adAnunc POST Se escriben en el almacén "ADMINISTRADORES DE TABLONES DE ANUNCIOS". Process: Validar Anuncio Minispec or Description: PRE1 Llega opAdminValidaciónAnuncios con su DNI y se leen datos del almacén

"TABLONES DE ANUNCIOS" con AdministradorAlta perteneciente al almacén "ADMININISTRADORES DE TABLONES DE ANUNCIOS", dichos anuncios tienen que tener como AdministradorAlta= DNI

POST1 Administrador válido. Se envían los anuncios al administrador ** se pueden indicar 2 funciones para un mismo proceso ** PRE2 Llega opAdminValidaciónAnuncio con su DNI perteneciente al almacén

"ADMININISTRADORES DE TABLONES DE ANUNCIOS" junto con el Nombre del Tablón y el Código del anuncio a validar.

POST2 Administrador válido. Se almacenan en TABLONES DE ANUNCIOS Dataflow: AccesoDocenteTablonAnunc To-symbol: Almacenar Nuevos Anuncios [Process] Data within flow: AccesoDocenteTablonAnunc Dataflow: EvalAdminConsultaAnuncios From-symbol: Consultar Anuncios [Process] Data within flow: EvalAdminConsultaAnuncios Dataflow: EvalAdminValidaciónAnuncios From-symbol: Validar Anuncio [Process] Data within flow: EvalAdminValidaciónAnuncios Dataflow: EvalDocenteAnuncios From-symbol: Consultar Anuncios [Process] Data within flow: EvalDocenteAnuncios Dataflow: OpAdminNuevoAnuncio To-symbol: Almacenar Nuevos Anuncios [Process] Data within flow: OpAdminNuevoAnuncio Dataflow: OpAdminValidaciónAnuncio

Page 49: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 47/88

To-symbol: Validar Anuncio [Process] Data within flow: OpAdminValidaciónAnuncio Datastore: ADMINISTRADORES DE TABLONES DE ANUNCIOS Output flows going to Validar Anuncio [Process] Update flows connected to Extraer Administradores de Anuncios [Process] Data within store: @DNI + login + password + DirCorreo Datastore: ANUNCIOS SIN VALIDAR Input flows coming from Almacenar Nuevos Anuncios [Process] Output flows going to Validar Anuncio [Process] Data within store: @Tablón + AdministradorAlta + 1{Anuncios}MaxAnuncios Datastore: TABLONES DE ANUNCIOS Input flows coming from Validar Anuncio [Process] Output flows going to Consultar Anuncios [Process] Data within store: @Tablón + AdministradorAlta + 1{Anuncios}MaxAnuncios Datastore: USUARIO DEL SISTEMA Output flows going to Extraer Administradores de Anuncios [Process] going to Consultar Anuncios [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD1.4. Gestor de Recursos Didácticos

Process: Actualizar Recursos Didácticos Minispec or Description: PRE Llegan datos de "RECURSOS DIDÁCTICOS A ELIMINAR" o "NUEVOS

RECURSOS DIDÁCTICOS" y opAdminActualizaciónRecDidácticos con su DNI para validarlo con "ADMINISTRADORES DE RECURSOS DIDÁCTICOS" (es decir, que está en este almacén).

POST Administrador válido. Se eliminan o almacenan en almacén NOTICIAS según vengan

de "RECURSOS DIDÁCTICOS A ELIMINAR" o "NUEVOS RECURSOS DIDÁCTICOS" respectivamente.

Process: Almacenar Nuevos Recursos Didácticos

Page 50: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 48/88

Minispec or Description: PRE Llega opAdminNuevoRecursoDidáctico junto con su DNI para validarlo con almacén

"ADMINISTRADORES DE RECURSOS DIDÁCTICOS". POST Adminstrador válido. Se almacenan en el almacén "NUEVOS RECURSOS

DIDÁCTICOS". Process: Buscar Recursos Didácticos Minispec or Description: PRE Llegan peticiones de usuarios, administradores o docentes (estos dos últimos deberán de

jugar el rol de usuario normal en el sistema) para buscar recursos didácticos junto con palabra/s a buscar sobre una combinación no vacía de los siguientes campos de Recursos opcionales: (Nombre) +(Código) +(Autor) +(TipoRecurso).

POST Se envían los recursos didácticos que concuerde con algún campo. Process: Eliminar Recursos Didácticos Minispec or Description: PRE Llegan datos de recursos didácticos de opAdminEliminaciarRecDidácticos a eliminar (

sus identificadores) y se validan del almacén "RECURSOS DIDACTICOS". POST Se almacenan en el almacén "RECURSOS DIDÁCTICOS A ELIMINAR". Process: Extraer Administradores de Recursos Didácticos Minispec or Description: PRE Se leen datos de "USUARIO DEL SISTEMA" cuyo categoriaProf = Adminstrador y

nivel = AdRec POST Se escriben en el almacén "ADMINISTRADORES DE RECURSOS DIDÁCTICOS". Process: Mostrar Recursos Didácticos Minispec or Description: PRE Llegan peticiones de usuarios, administradores o docentes para mostrar recursos

didácticos junto con el Código del recurso. POST Se envían los recursos didácticos que solicitan. Dataflow: BúsquedaRecursosDidácticos To-symbol: Buscar Recursos Didácticos [Process] Data within flow: BúsquedaRecursosDidácticos

Page 51: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 49/88

Dataflow: ConsultaRecursos From-symbol: Mostrar Recursos Didácticos [Process] To-symbol: [XOR Connector] Data within flow: ConsultaRecursos Dataflow: EvalAdminBusquedaRecDidc From-symbol: Buscar Recursos Didácticos [Process] Data within flow: EvalAdminBusquedaRecDidc Dataflow: EvalAdminEliminaciónRecDidacticos From-symbol: Eliminar Recursos Didácticos [Process] Data within flow: EvalAdminEliminaciónRecDidacticos Dataflow: OpAdminActualizarRecDidácticos To-symbol: Actualizar Recursos Didácticos [Process] Data within flow: OpAdminActualizarRecDidácticos Dataflow: OpAdminEliminarRecDidácticos To-symbol: Eliminar Recursos Didácticos [Process] Data within flow: OpAdminEliminarRecDidácticos Dataflow: OpAdminNuevoRecursoDidáctico To-symbol: Almacenar Nuevos Recursos Didácticos [Process] Data within flow: OpAdminNuevoRecursoDidáctico Datastore: ADMINISTRADORES DE RECURSOS DIDÁCTICOS Output flows going to Eliminar Recursos Didácticos [Process] going to Actualizar Recursos Didácticos [Process] going to Almacenar Nuevos Recursos Didácticos [Process] Update flows connected to Extraer Administradores de Recursos Didácticos [Process] Data within store: @DNI+ login + password + DirCorreo Datastore: NUEVOS RECURSOS DIDÁCTICOS Input flows coming from Almacenar Nuevos Recursos Didácticos [Process] Update flows connected to Actualizar Recursos Didácticos [Process] Data within store: @Código + Nombre + AdministradorAlta + Autor + Descripción + TipoRecurso Datastore: RECURSOS DIDÁCTICOS Output flows going to Eliminar Recursos Didácticos [Process] going to Buscar Recursos Didácticos [Process] going to Mostrar Recursos Didácticos [Process]

Page 52: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 50/88

Update flows connected to Actualizar Recursos Didácticos [Process] Data within store: @Código + Nombre + Administrador + Autor + TipoRecurso + Descripción Datastore: RECURSOS DIDÁCTICOS A ELIMINAR Input flows coming from Eliminar Recursos Didácticos [Process] Update flows connected to Actualizar Recursos Didácticos [Process] Data within store: @Código Datastore: USUARIO DEL SISTEMA Output flows going to Extraer Administradores de Recursos Didácticos [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD1.6. Gestor de Correo Process: Administrar Lista de Distribución Purpose: Gestionar el acceso y control de las listas de distribución del sistema. Process: Consultar Correos Minispec or Description: PRE Hay registros nuevos en CORREOS con Estado-Correo=Recibido POST Se envían esos mensajes al Usuario que tiene como DirCorreo el Receptor del mensaje

(tanto como Administrador como Docente). Se cambia el Estado-Correo del registro de CORREOS a leído.

Process: Enviar Correos Minispec or Description: PRE1 Llegan opDocenteEnvioCorreo u opAdminEnvioCorreo junto con sus

correoElectronico, y autenticación su DNI aparecerá en USUSISTEMA con estado =activa y cuentaExpira = falso y cuentaPenalizada = null

POST1 Usuario válido. Se almacenan con estado pendiente en almacén CORREOS PRE2 Llegan datos de CORREOS con estado de correo = pendiente POST2 Se envían a servidor de correo y se eliminan del almacén CORREOS

Page 53: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 51/88

Process: Recibir Correos Minispec or Description: PRE Llega Correo con correos cuyos receptores están en el dominio de nuestro sistema:

@educarm.es. *Los implementadores deberán de conseguir que todo correo a @educarm.es venga al sistema*.

POST Si no está en el almacén CORREOS, se inserta con EstadoCorreo=recibido. Dataflow: Correo From-symbol: Servidor de Correo [External] To-symbol: Recibir Correos [Process] Data within flow: Emisor + Receptor + CuerpoMensaje Dataflow: CorreoEnviado From-symbol: Enviar Correos [Process] To-symbol: Servidor de Correo [External] Data within flow: Emisor + [Receptor | CodigoLista] + CuerpoMensaje Dataflow: EvalAdminConsultaCorreo From-symbol: Consultar Correos [Process] Data within flow: Emisor + CuerpoMensaje +Hora-llegada Dataflow: EvalAdminListasDistribución From-symbol: Administrar Lista de Distribución [Process] Data within flow: [EvalAdminConsultaListaDistribución | EvalAdminActualizaciónListasAdministración | EvalAdminEnvioCorreoALD] Dataflow: EvalDocenteConsultaCorreo From-symbol: Consultar Correos [Process] Data within flow: Emisor + CuerpoMensaje + Hora-llegada Dataflow: EvalDocenteListasDistribución From-symbol: Administrar Lista de Distribución [Process] Data within flow: CodigoLista + Descripción + Miembros Dataflow: OpAdminEnvíoCorreo To-symbol: Enviar Correos [Process] Data within flow: DNI + DirCorreo + [Receptor|CodigoLista] + CuerpoMensaje Dataflow: OpAdminListasDistribución To-symbol: Administrar Lista de Distribución [Process] Data within flow: [OpAdminSolicitudListaDistrib | OpAdminActualizListaDistrib | OpAdminValidaCorreoALD ] Dataflow: OpDocenteEnvíoCorreo

Page 54: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 52/88

To-symbol: Enviar Correos [Process] Data within flow: DNI + DirCorreo + Receptor + CuerpoMensaje Dataflow: OpDocenteSolicitudListaDistrib To-symbol: Administrar Lista de Distribución [Process] Data within flow: DNI + DirCorreo Datastore: CORREOS Update flows connected to Enviar Correos [Process] connected to Administrar Lista de Distribución [Process] connected to Consultar Correos [Process] connected to Recibir Correos [Process] Data within store: @Emisor + @Receptor + @Hora-llegada + CuerpoMensaje + Estado-correo Datastore: USUARIO DEL SISTEMA Output flows going to Administrar Lista de Distribución [Process] going to Consultar Correos [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD1.6.4. Administrar Lista de Distribución Process: Actualizar Listas de Distribución Minispec or Description: PRE1 Hay registros nuevos en "SOLICITUDES DE ADMISIÓN". POST1 Administrador válido. Se envían las solicitudes que tengan como administrador=DNI

llegado de OpAdminActualizListaDistrib por EvalAdminActualizaciónListasAdministración.

PRE2 Llega OpAdminActualizListaDistrib junto con DNI perteneciente a

"ADMINISTRADORES DE LISTAS DE DISTRIBUCIÓN". POST2 Admin válido. Se almacenan los nuevos usuarios de las LD en "LISTAS DE

DISTRIBUCIÓN". Process: Almacenar Solicitudes de Listas de Distribución Minispec or Description: PRE Llegan opDocenteSolicitudListaDistrib u opAdminSolicitudListaDistrib con el DNI y la

solicitud que incluye el Código de la lista. El DNI aparecerá en USUSISTEMA con con estado =activa y cuentaExpira = falso y cuentaPenalizada = null.

Page 55: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 53/88

POST Se almacenan en SOLICITUDES DE ADMISIÓN. Process: Consultar Listas de Distribución Minispec or Description: PRE1 Llega una lista de distribución a "LISTAS DE DISTRIBUCIÓN". POST1 Se envía la información de la lista a los docentes y adminsitradores cuyo estado sea

Activa. Process: Extraer Administradores de Listas de Distribución Minispec or Description: PRE Se leen datos de "USUARIO DEL SISTEMA" cuyo categoriaProf = Adminstrador y

nivel = AdLDistrib POST Se escriben en el almacén "LISTAS DE DISTRIBUCIÓN". Process: Generar Correos Minispec or Description: PRE1 Hay correos nuevos en CORREOS con estado-correo = pendiente y Receptor del

mensaje una lista de distribución (coincide con un Código del almacén "LISTAS DE DISTRIBUCIÓN"),

POST1 Se envía por EvalAdminEnvioCorreoALD al AdministradorLista de la lista Código el

mensaje pendiente, para su posterior validación. PRE2 Llega OpAdminValidaCorreoALD con un DNI que pertence aun AdministradorLista de

"LISTAS DE DISTRIBUCIÓN". Emisor +Receptor +Hora-llegada es un correo con Estado-correo en pendiente y cuyo Receptor es una de las listas de distribución que administra el DNI anterior.

POST2 Si ok es verdadero, se genera, para cada miembro de la lista de distribución, un correo

con el mismo cuerpo, emisor, hora-llegada,... pero con Receptor cada miembro dicho. Estado pasa a ser pendiente y se elimina el correo anterior. Si ok resulta ser falso, se puede enviar un correo al emisor indicando que no se ha aceptado su solicitud y se borra el mensaje anterior.

Dataflow: EvalAdminActualizaciónListasAdministración From-symbol: Actualizar Listas de Distribución [Process] Data within flow: DNI + DirCorreo + CodigoLista Dataflow: EvalAdminConsultaListaDistribución

Page 56: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 54/88

From-symbol: Consultar Listas de Distribución [Process] Data within flow: CodigoLista + Descripción + Miembros Dataflow: EvalAdminEnvioCorreoALD From-symbol: Generar Correos [Process] Data within flow: EvalAdminEnvioCorreoALD Dataflow: EvalDocenteListasDistribución From-symbol: Consultar Listas de Distribución [Process] Data within flow: CodigoLista + Descripción + Miembros Dataflow: OpAdminActualizListaDistrib To-symbol: Actualizar Listas de Distribución [Process] Data within flow: DNI + DirCorreo + CodigoLista + 0{DNI}MaxMiembrosLD Dataflow: OpAdminSolicitudListaDistrib To-symbol: Almacenar Solicitudes de Listas de Distribución [Process] Data within flow: DNI + DirCorreo + CodigoLista Dataflow: OpAdminValidaCorreoALD To-symbol: Generar Correos [Process] Data within flow: OpAdminValidaCorreoALD Dataflow: OpDocenteSolicitudListaDistrib To-symbol: Almacenar Solicitudes de Listas de Distribución [Process] Data within flow: DNI + DirCorreo Datastore: ADMINISTRADORES DE LISTAS DE DISTRIBUCIÓN Input flows coming from Extraer Administradores de Listas de Distribución [Process] Output flows going to Actualizar Listas de Distribución [Process] going to Generar Correos [Process] Data within store: @DNI + DirCorreo + Login + password Datastore: CORREOS Update flows connected to Generar Correos [Process] Data within store: @Emisor + @Receptor + @Hora-llegada + CuerpoMensaje + Estado-correo Datastore: LISTAS DE DISTRIBUCIÓN Output flows going to Generar Correos [Process] going to Consultar Listas de Distribución [Process] Update flows connected to Actualizar Listas de Distribución [Process]

Page 57: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 55/88

Data within store: @Código + Descripción + AdministradorLista + Miembros Datastore: SOLICITUDES DE ADMISIÓN Input flows coming from Almacenar Solicitudes de Listas de Distribución [Process] Output flows going to Actualizar Listas de Distribución [Process] Data within store: @DNI + DirCorreo + @CodigoLista Datastore: USUARIO DEL SISTEMA Output flows going to Extraer Administradores de Listas de Distribución [Process] going to Almacenar Solicitudes de Listas de Distribución [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD2. Gestor de Incidencias Process: Aceptar Respuesta Incidencias Minispec or Description: PRE1 El DNI del Técnico llegado por el flujo ResoluciónIncidencia concuerda con uno de los

registros del almacén "TÉCNICOS CAP" y el Código de la incidencia llegado por este flujo está en el Código de un registro en el almacén "INCIDENCIAS CAP" con EstadoIncidencia en trámite.

POST1 Se actualiza el registro concordante del almacén "INCIDENCIAS CAP": Se inserta en

el campo Técnico la información asociada al Técnico del almacén "TÉCNICOS CAP", en Tiempo-Respuesta el tiempo transcurrido desde Hora-llegada en el registro a actualizar y la fecha actual del sistema, en causa, la causa llegada por el flujo ResoluciónIncidencia y en EstadoIncidencia a resuelta.

PRE2 El DNI del Técnico llegado por el flujo ResoluciónIncidencia NO concuerda con uno de

los registros del almacén "TÉCNICOS CAP". POST2 Enviar un mensaje de error indicando la imposibilidad de realizarlo. PRE3 El Código de la incidencia llegado por el flujo ResoluciónIncidencia NO está en el

Código de un registro en el almacén "INCIDENCIAS CAP". POST3 Enviar un mensaje de error indicando que no se encuentra esa incidencia. PRE4

Page 58: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 56/88

El Código de la incidencia llegado por el flujo ResoluciónIncidencia está en el Código de un registro en el almacén "INCIDENCIAS CAP" con EstadoIncidencia DISTINTO a trámite.

POST4 Enviar un mensaje de error indicando que el estado de la incidencia es incorrecto para

ser resuelta. Process: Actualizar Inciencia a CAP Minispec or Description: PRE1 El DNI llegado por el flujo OpRMINuevaIncidencia está en el almacén RMI, no llega

por este flujo "EstadoIncidencia + Código" y el Estado de la cuenta es Activa. POST1 Se inserta en "INCIDENCIAS CAP" un registro con un Código no existente en este

almacén, en DNI el llegado por el flujo OpRMINuevaIncidencia, en Hora-llegada la hora actual del sistema, en Descripción el llegado por el flujo, en Centro el Centro que viene asociado al DNI que tiene correspondencia con un DNI del almacén RMI, en EstadoIncidencia el valor "pendiente", en CPR el CPR asociado al Centro que tiene correspondiencia con Nombre de un registro del almacén CENTROS.

PRE2 El DNI llegado por el flujo OpRMINuevaIncidencia está en el almacén RMI, el Estado

de la cuenta es Activa, llega por este flujo "EstadoIncidencia + Código" y Código está en un registro del almacén "INCIDENCIAS CAP".

POST2 Se cambia EstadoIncidencia del registro concordante en el almacén "INCIDENCIAS

CAP" con el Código llegado por el flujo de datos OpRMINuevaIncidencia por el EstadoIncidencia llegado por este mismo. Si Descripción llegado por este flujo de datos no es la cadena vacía, también se inserta en Descripción del registro concordante del almacén dicho.

PRE3 No se cumple PRE1 ni PRE2 POST3 Se envía un mensaje de error indicando la cancelación de la operación. Process: Consultar Incidencias Minispec or Description: PRE1 Llega por OpRMIConsultaIncidencia un DNI que está en un registro del almacén RMI

(cuyo Estado es Activa) y cualquier combinación no vacía de valores de (Hora-llegada) +(Descripción) +(Centro) + (CPR) + (EstadoIncidencia) + (causa) + (Técnico) de este flujo aceptando caracteres comodines en ellos y hay registros en el almacén "INCIDENCIAS CAP" cuyos valores de sus campos concuerdan con los valores opcionales del flujo dicho arriba.

POST1 Se devuelve por EvalRMIIncidencia todos los registros concordantes del almacén

"INCIDENCIAS CAP".

Page 59: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 57/88

PRE2 Llega por OpRMIConsultaIncidencia un DNI que está en un registro del almacén RMI

(cuyo Estado es Activa) y cualquier combinación no vacía de valores de (Hora-llegada) +(Descripción) +(Centro) + (CPR) + (EstadoIncidencia) + (causa) + (Técnico) de este flujo aceptando caracteres comodines en ellos y NO hay registros en el almacén "INCIDENCIAS CAP" cuyos valores de sus campos concuerden con los valores opcionales del flujo dicho arriba.

POST2 Se devuelve por EvalRMIIncidencia un flujo vacío o un mensaje diciendo que no se ha

encontrado registros concordantes. PRE3 Llega por OpRMIConsultaIncidencia un DNI que está en un registro del almacén RMI

(cuyo estado es Activa) y ninguno de los valores de (Hora-llegada) +(Descripción) +(Centro) + (CPR) + (EstadoIncidencia) + (causa) + (Técnico) de este flujo.

POST3 Se devuelve por EvalRMIIncidencia todo registro del almacén "INCIDENCIAS CAP". PRE4 No se cumple ni PRE1, ni PRE2 ni PRE3. POST4 Se devuelve un mensaje de error indicando la cancelación de la operación. Process: Enviar Incidencias Minispec or Description: PRE1 Existe un registro en el almacén "INCIDENCIAS CAP" con EstadoIncidencia igual a

pendiente. POST1 Se enviará la incidencia por el flujo Incidencias (DNI +Hora-llegada+Descripción +Centro +EstadoIncidencia +CPR) al técnico correspondiente al CPR de la incidencia (buscado en el almacén "TÉCNICOS CAP"). EstadoIncidencia de ese registro en "INCIDENCIAS CAP" pasa a trámite. Process: Extraer Docentes RMI Minispec or Description: PRE1 Existe en "USUARIO DEL SISTEMA" un registro con Nivel=RMI y el DNI no está en

"RMI" POST1 El DNI, Centro y DirCorreo del registro encontrado se inserta en el almacén "RMI" Dataflow: EvalRMIIncidencia From-symbol: Consultar Incidencias [Process] Data within flow: EvalRMIIncidencia

Page 60: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 58/88

Dataflow: Incidencias From-symbol: Enviar Incidencias [Process] To-symbol: Técnicos del CAP [External] Data within flow: DNI + Hora-llegada+ Descripción + Centro + EstadoIncidencia + CPR Dataflow: OpRMIConsultaIncidencia To-symbol: Consultar Incidencias [Process] Data within flow: OpRMIConsultaIncidencia Dataflow: OpRMINuevaIncidencia To-symbol: Actualizar Inciencia a CAP [Process] Data within flow: OpRMINuevaIncidencia Dataflow: ResoluciónIncidencia From-symbol: Técnicos del CAP [External] To-symbol: Aceptar Respuesta Incidencias [Process] Data within flow: Técnico + Código + causa Datastore: CENTROS Output flows going to Actualizar Inciencia a CAP [Process] Data within store: @Nombre + CPR + RMI Datastore: INCIDENCIAS CAP Input flows coming from Actualizar Inciencia a CAP [Process] Output flows going to Consultar Incidencias [Process] Update flows connected to Enviar Incidencias [Process] connected to Aceptar Respuesta Incidencias [Process] Data within store: @Código + DNI + Hora-llegada + Descripción + Centro +

EstadoIncidencia + CPR + (Técnico + Tiempo-Respuesta + causa) Datastore: RMIs Output flows going to Actualizar Inciencia a CAP [Process] going to Consultar Incidencias [Process] Update flows connected to Extraer Docentes RMI [Process] Data within store: @DNI + Centro + DirCorreo Datastore: TÉCNICOS CAP Output flows going to Aceptar Respuesta Incidencias [Process] going to Enviar Incidencias [Process]

Page 61: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 59/88

Data within store: @DNI + DirCorreo +[CPR | Regional] Datastore: USUARIO DEL SISTEMA Output flows going to Extraer Docentes RMI [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD3. Administrar Usuarios Process: Actualizar Cuentas Usuarios Purpose: Permite modificar y crear cuentas para los usuarios del sistema. Process: Autenticar Usuarios Minispec or Description: PRE1 Llega AutenticaciónAdmin o AutenticaciónDocente por la entrada, el DNI que traen

está en un registro de "USUARIO DEL SISTEMA", el login y password pasados concuerdan con los del registro, y el Estado de la cuenta está en inactiva, nueva o modificada..

POST1 El Estado del registro concordante pasa a activa. A partir de ahora podrá acceder a su

área restringida. PRE2 Llega AutenticaciónAdmin o AutenticaciónDocente por la entrada, el DNI que traen

NO está en un registro de "USUARIO DEL SISTEMA". POST2 Se envía un mensaje de error indicando que el usuario no existe. PRE3 Llega AutenticaciónAdmin o AutenticaciónDocente por la entrada, el DNI que traen

está en un registro de "USUARIO DEL SISTEMA", el login y password pasados NO concuerdan con los del registro,

POST3 Se envía un mensaje de error indicando que no se ha podido autenticar con éxito. PRE4 Llega AutenticaciónAdmin o AutenticaciónDocente por la entrada, el DNI que traen

está en un registro de "USUARIO DEL SISTEMA", el login y password pasados concuerdan con los del registro, y el Estado de la cuenta es activa o cancelada.

POST4 Se envía un mensaje de error indicando que el estado de la cuenta es incorrecta para la

autenticación.

Page 62: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 60/88

Process: Cambiar Contraseña Minispec or Description: PRE1 Llega OpDocenteCambioContraseña o OpAdminCambioContraseña, el DNI llegado

está en un Registro de "USUARIO DEL SISTEMA", el Estado de ese registro vale Activa y el password llegado por el flujo correspondiente no es la cadena vacía.

POST1 Se actualiza el password del registro concordante por el password llegado por el flujo. PRE2 No se cumple PRE1. POST2 Se envía un mensaje de error indicando la imposibilidad de realizar dicha acción. Process: Consultar Cuenta Minispec or Description: PRE Llega un registro del almacén "USUARIO DEL SISTEMA" POST Se enviará los datos de esa cuenta al correspondiente usuario Docente u Administrador por EvalCuentaDocente o EvalAdminConsultaCuenta respectivamente que tiene el DNI de esa cuenta, y su Estado es Activa. Process: Consultar usuarios Minispec or Description: PRE Llega un registro del almacén "USUARIO DEL SISTEMA" POST Se envirán los datos de esa cuenta por EvalAdminConsultaUsuarios al correspondiente

AdministradorAlta de ese usuario, siempre y cuando ese AdministradorAlta esté en estado Activa.

Process: Salir del Sistema Minispec or Description: PRE1 Llega AutenticaciónAdmin o AutenticaciónDocente por la entrada, el DNI que traen

está en un registro de "USUARIO DEL SISTEMA", el login y password pasados concuerdan con los del registro, y el Estado de la cuenta está en Activa..

POST1 El Estado del registro concordante pasa a inactiva. A partir de ahora no podrá acceder a

su área restringida. PRE2

Page 63: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 61/88

Llega AutenticaciónAdmin o AutenticaciónDocente por la entrada, el DNI que traen está en un registro de "USUARIO DEL SISTEMA", el login y password pasados concuerdan con los del registro, y el Estado de la cuenta no es activa.

POST2 Se envía un mensaje de error indicando que el estado de la cuenta es incorrecta para la

"des-autenticación". PRE3 No se cumple PRE1 ni PRE2. POST3 Se envía un mensaje de error indicando de la cancelación de la operación. Dataflow: AutenticaciónAdmin From-symbol: Administradores [External] To-symbol: [AND Connector] Data within flow: DNI + login + password Dataflow: AutenticaciónDocente From-symbol: Docentes [External] To-symbol: [AND Connector] Data within flow: DNI + login + password Dataflow: EvalAdminActualizacionCuentas From-symbol: Actualizar Cuentas Usuarios [Process] Data within flow: EvalAdminActualizacionCuentas Dataflow: EvalAdminConsultaCuenta From-symbol: Consultar Cuenta [Process] Data within flow: EvalAdminConsultaCuenta Dataflow: EvalAdminConsultaUsuarios From-symbol: Consultar usuarios [Process] Data within flow: EvalAdminConsultaUsuarios Dataflow: EvalCuentaDocente From-symbol: Consultar Cuenta [Process] Data within flow: EvalCuentaDocente Dataflow: OpAdminActualizCuentas To-symbol: Actualizar Cuentas Usuarios [Process] Data within flow: OpAdminActualizCuentas Dataflow: OpAdminCambioContraseña To-symbol: Cambiar Contraseña [Process] Data within flow: OpAdminCambioContraseña Dataflow: OpDocenteActualizCuenta To-symbol: Actualizar Cuentas Usuarios [Process] Data within flow: OpDocenteActualizCuenta

Page 64: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 62/88

Dataflow: OpDocenteCambioContraseña To-symbol: Cambiar Contraseña [Process] Data within flow: OpDocenteCambioContraseña Dataflow: PeticiónCuentas From-symbol: Usuarios [External] To-symbol: Actualizar Cuentas Usuarios [Process] Data within flow: Nombre + Apellidos + DNI + FechaNacimiento + Dirección +

DirecciónProfesional + login + password Datastore: CORREOS Input flows coming from Actualizar Cuentas Usuarios [Process] Data within store: @Emisor + @Receptor + @Hora-llegada + CuerpoMensaje + Estado-correo Datastore: USUARIO DEL SISTEMA Output flows going to Consultar usuarios [Process] Update flows connected to Consultar Cuenta [Process] connected to Salir del Sistema [Process] connected to Cambiar Contraseña [Process] connected to Actualizar Cuentas Usuarios [Process] connected to Autenticar Usuarios [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD3.2. Actualizar Cuentas Usuarios Process: Enviar Datos Nueva Cuenta Minispec or Description: PRE1 Hay un registro en "CUENTAS A MODIFICAR" cuyo DNI aparece en un registro de

"USUARIO DEL SISTEMA". POST1 Se escribe en CORREOS un registro usando la información del registro encontrado en

"USUARIO DEL SISTEMA": Emisor=DirCorreo correspondiente al DNI del AdministradorAlta, Receptor=DirCorreo del DNI de la cuenta modificada, Hora-llegada la actual del sistema, CuerpoMensaje con la concatenación de los campos del registro concordante de la cuenta Nueva o Modificada (Nombre + Apellidos + DNI + FechaNacimiento + Dirección + DirecciónProfesional + CategoríaProf + Nivel + CorreoElectrónico + AdministradorAlta + login + password + cuota + Expiración + CuentaPenalizada), y Estado-correo en

Page 65: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 63/88

pendiente. Estado de la cuenta pasa a inactiva El registro del almacén "CUENTAS A MODIFICAR" es eliminado..

Process: Extraer Administradores de Usuarios Minispec or Description: PRE1 Existe en "USUARIO DEL SISTEMA" un registro con Nivel=AdUsu y DNI no está en

"ADMINISTRADORES DE USUARIOS" POST1 El DNI, login, password y DirCorreo del registro encontrado se inserta en el almacén

"ADMINISTRADORES DE USUARIOS" Process: Modificar Estado Cuenta Minispec or Description: PRE1 Llega por OpAdminModificarCuenta un Administrador cuyo DNI está en "USUARIO

DEL SISTEMA", cuyo Nivel contiene AdUsu y Estado es activo. Por Este flujo viene también los siguientes datos: Nombre + Apellidos + DNI + FechaNacimiento + login + password + cuota + Dirección + DirecciónProfesional + categoríaProf + Nivel + CorreoElectrónico + Expiración + Estado + CuentaPenalizada y DNI no está en "USUARIO DEL SISTEMA".

POST1 Se inserta un registro en "USUARIO DEL SISTEMA" con los campos rellenados con

los llegados del flujo, Estado de la cuenta pasa a valer nueva y AdministradorAlta pasa a valer Administrador. El DNI se inserta en el almacén "CUENTAS MODIFICADAS" si no existe. Se elimina de "CUENTAS NUEVAS" el registro que corresponda con el DNI del nuevo registro insertado en "USUARIO DEL SISTEMA", si existe.

PRE2 Llega por OpAdminModificarCuenta un Administrador cuyo DNI está en "USUARIO

DEL SISTEMA" y cuyo Nivel contiene AdUsu. El DNI llegado está en un registro de "USUARIO DEL SISTEMA" y su AdministradorAlta tiene el mismo DNI que el Administrador del flujo. Por este flujo viene también alguna combinación no vacía de los siguientes campos: Dirección, DirecciónProfesional, categoríaProf, Nivel, CorreoElectrónico, Expiración, Estado, CuentaPenalizada y cuota.

POST2 Se actualizan los campos del registro que concuerda con el DNI llegado por el flujo con

la combinación anterior. El DNI se inserta en el almacén "CUENTAS MODIFICADAS" si no existe. Se elimina de "CUENTAS A MODIFICAR" aquel registro cuyo DNI concuerde con el DNI del registro modificado anteriormente, si existe.

PRE3 Hay un registro nuevo en el almacén "CUENTAS A MODIFICAR", y el DNI tiene

correspondencia con un "USUARIO DEL SISTEMA". POST3

Page 66: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 64/88

Se envía al AdministradorAlta del registro concordante en "USUARIO DEL SISTEMA" los datos del registro nuevo de "CUENTAS A MODIFICAR" y es marcado para no volver a enviarse.

PRE4 Hay un registro nuevo en el almacén "CUENTAS NUEVAS" y el DNI no tiene

correspondenica con un "USUARIO DEL SISTEMA". POST4 Se envían a todos los administradores del almacén "ADMINISTRADORES DE

USUARIOS" los datos del registro, y se marca para no volver a enviarlo. PRE5 No se cumple PRE1 ni PRE2. POST5 Se envía un mensaje de error indicando de la cancelación de la operación dado que

inclumple una condición ni de PRE1 ni PRE2. Process: Validar Datos Cuentas Minispec or Description: PRE1 Llega por OpDocenteActualizCuenta un DNI que está en "USUARIO DEL SISTEMA"

con Estado igual a activo y no está en "CUENTAS A MODIFICAR". También por este flujo llega cualquier combinación no vacía de (Dirección) + (DirecciónProfesional) + (categoríaProf) + (Nivel) + (CorreoElectrónico) + (login) + (Estado) + (Expiración).

POST1 Se inserta un registro en "CUENTAS A MODIFICAR" cuyos campos son los llegados

por el flujo. Los campos que faltan para rellenar el registro del almacén anterior porque son datos que no llegan por el flujo al ser opcionales, se recogerán del registro correspondiente en "USUARIO DEL SISTEMA".

PRE2 Llega por OpDocenteActualizCuenta un DNI que está en "USUARIO DEL SISTEMA"

con Estado igual a activo y está en "CUENTAS A MODIFICAR". También por este flujo llega cualquier combinación no vacía de (Dirección) + (DirecciónProfesional) + (categoríaProf) + (Nivel) + (CorreoElectrónico) + (login) + (Estado) + (Expiración).

POST2 Se actualiza el registro en "CUENTAS A MODIFICAR" cuyos campos son los llegados

por el flujo. Los campos que faltan para rellenar el registro del almacén anterior se dejan como estaban.

PRE3 Llega PeticiónCuentas (Nombre + Apellidos + DNI + FechaNacimiento + Dirección +

DirecciónProfesional + CorreoElectrónico + login + password) y el DNI no está en "USUARIOS DEL SISTEMA" ni en "CUENTAS NUEVAS".

POST3 Se inserta en "CUENTAS NUEVAS" un registro con los datos llegados por el flujo

PeticiónCuentas.

Page 67: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 65/88

PRE4 Llega por OpAdminCambioCuenta un DNI que está en "USUARIO DEL SISTEMA"

con Estado igual a activo y no está en "CUENTAS A MODIFICAR". También por este flujo llega cualquier combinación no vacía de (Dirección) + (DirecciónProfesional) + (categoríaProf) + (Nivel) + (CorreoElectrónico) + (login) + (Estado) + (Expiración).

POST4 Se inserta un registro en "CUENTAS A MODIFICAR" cuyos campos son los llegados

por el flujo. Los campos que faltan para rellenar el registro del almacén anterior porque son datos que no llegan por el flujo al ser opcionales, se recogerán del registro correspondiente en "USUARIO DEL SISTEMA".

PRE5 Llega por OpAdminCambioCuenta un DNI que está en "USUARIO DEL SISTEMA"

con Estado igual a activo y está en "CUENTAS A MODIFICAR". También por este flujo llega cualquier combinación no vacía de (Dirección) + (DirecciónProfesional) + (categoríaProf) + (Nivel) + (CorreoElectrónico) + (login) + (Estado) + (Expiración).

POST5 Se actualiza el registro en "CUENTAS A MODIFICAR" cuyos campos son los llegados

por el flujo. Los campos que faltan para rellenar el registro del almacén anterior se dejan como estaban.

PRE6 No se cumple ninguno de las anteriores precondiciones. POST6 Se envía un mensaje de error indicando la cancelación de la operación. Dataflow: EvalAdminActualizacionCuentas From-symbol: Modificar Estado Cuenta [Process] Data within flow: EvalAdminActualizacionCuentas Dataflow: OpAdminCambioCuenta To-symbol: Validar Datos Cuentas [Process] Data within flow: OpAdminCambioCuenta Dataflow: OpAdminModificarCuenta To-symbol: Modificar Estado Cuenta [Process] Data within flow: OpAdminModificarCuenta Dataflow: OpDocenteActualizCuenta To-symbol: Validar Datos Cuentas [Process] Data within flow: OpDocenteActualizCuenta Dataflow: PeticiónCuentas From-symbol: Usuarios [External] To-symbol: Validar Datos Cuentas [Process] Data within flow: Nombre + Apellidos + DNI + FechaNacimiento + Dirección +

DirecciónProfesional + login + password

Page 68: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 66/88

Datastore: ADMINISTRADORES DE USUARIOS Output flows going to Modificar Estado Cuenta [Process] Update flows connected to Extraer Administradores de Usuarios [Process] Data within store: @DNI + DirCorreo + Login + password Datastore: CORREOS Input flows coming from Enviar Datos Nueva Cuenta [Process] Data within store: @Emisor + @Receptor + @Hora-llegada + CuerpoMensaje + Estado-correo Datastore: CUENTAS A MODIFICAR Input flows coming from Validar Datos Cuentas [Process] Update flows connected to Modificar Estado Cuenta [Process] Data within store: @DNI + Dirección + DirecciónProfesional + categoríaProf + Nivel

+ DirCorreo + login + Expiración + Estado Datastore: CUENTAS MODIFICADAS Input flows coming from Modificar Estado Cuenta [Process] Update flows connected to Enviar Datos Nueva Cuenta [Process] Data within store: @DNI Datastore: CUENTAS NUEVAS Input flows coming from Validar Datos Cuentas [Process] Update flows connected to Modificar Estado Cuenta [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

Datastore: USUARIO DEL SISTEMA Output flows going to Enviar Datos Nueva Cuenta [Process] going to Extraer Administradores de Usuarios [Process] going to Validar Datos Cuentas [Process] Update flows connected to Modificar Estado Cuenta [Process]

Page 69: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 67/88

Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección + DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD4. Gestor de Aula Virtual

Dataflow: DesarrolloCurso From-symbol: [XOR Connector] To-symbol: Gestionar Desarrollo Curso [Process] Data within flow: DesarrolloCurso Dataflow: EvalAdminCursos From-symbol: Gestionar Matriculación [Process] Data within flow: EvalAdminCursos Dataflow: EvalCurso From-symbol: Gestionar Desarrollo Curso [Process] To-symbol: Tutor [External] Data within flow: [ EvalDocenteForos | EvalTutorEjercicios ] Dataflow: EvalDesarrolloCurso From-symbol: Gestionar Desarrollo Curso [Process] To-symbol: [XOR Connector] Data within flow: EvalDesarrolloCurso Dataflow: EvalDocenteCurso From-symbol: [XOR Connector] To-symbol: [XOR Connector] Data within flow: EvalDocenteCurso Dataflow: EvalOfertaCursos From-symbol: Gestionar Preinscripción [Process] To-symbol: [XOR Connector] Data within flow: EvalOfertaCursos Dataflow: GestiónCurso From-symbol: Tutor [External] To-symbol: Gestionar Desarrollo Curso [Process] Data within flow: [ AccesoDocenteForos | ControlDesarrolloTutor ] Dataflow: MatriculaciónCurso From-symbol: [XOR Connector] To-symbol: Gestionar Matriculación [Process] Data within flow: MatriculaciónCurso Dataflow: OpAdminCursos

Page 70: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 68/88

To-symbol: Gestionar Matriculación [Process] Data within flow: OpAdminCursos Dataflow: ParticiparCurso To-symbol: [XOR Connector] Data within flow: ParticiparCurso Dataflow: PreinscripciónCurso From-symbol: [XOR Connector] To-symbol: Gestionar Preinscripción [Process] Data within flow: PreinscripciónCurso Datastore: CORREOS Input flows coming from [XOR Connector] Data within store: @Emisor + @Receptor + @Hora-llegada + CuerpoMensaje + Estado-correo Datastore: CURSOS Output flows going to Gestionar Desarrollo Curso [Process] going to Gestionar Preinscripción [Process] Update flows connected to Gestionar Matriculación [Process] Data within store: @Nombre + Ámbito + Tutor + Administrador + Login + password

+ Duración + Fecha-inicio + EstadoCurso + Descripción + 0{CriterioSistema + Prioridad}N

Datastore: MATRICULADOS Output flows going to Gestionar Desarrollo Curso [Process] Update flows connected to Gestionar Matriculación [Process] Data within store: @Curso + 5{DNI + DirCorreo}MaxAlumnos Datastore: PREINSCRIPCIONES Input flows coming from Gestionar Preinscripción [Process] Output flows going to Gestionar Matriculación [Process] Data within store: @DNI + @Curso + 0{CriterioSistema}N Datastore: USUARIO DEL SISTEMA Output flows going to Gestionar Preinscripción [Process] Update flows connected to Gestionar Matriculación [Process]

Page 71: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 69/88

Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección + DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD4.1. Gestionar Preinscripción Process: Mostrar Cursos Minispec or Description: PRE1 Llega un registro de cursos de CURSOS POST1 Se envía por EvalOfertaCursos la información de los cursos a aquellos docentes que

tengan el estado a Activo y: con CPR igual al CPR del curso o que curso tenga ámbito Regional.

Process: Validar Solicitudes Cursos Minispec or Description: PRE1 Llega el flujo de datos PreinscripciónCurso con un DNI válido en el almacén

"USUARIO DEL SISTEMA" con Estado igual a Activo, DNI y Curso llegados no está en un registro del almacén PREINSCRIPCIONES. El EstadoCurso del Curso en el almacén CURSOS está en preinscripción y Feha-inicio + Duración es mayor que la fecha actual. *no sobrepasar el período de preinscripción*

POST1 Se insertará en PREINSCRIPCIONES los datos llegados por el flujo

PreinscripciónCurso: DNI +Curso +0{CriterioSistema}N y se enviará un mensaje indicando que se puede pedir documentalmente la validación de los criterios aceptados.

PRE2 No se cumple PRE1. POST2 Se enviará un mensaje de error indicando la cancelación de la operación. Dataflow: EvalOfertaCursos From-symbol: Mostrar Cursos [Process] Data within flow: EvalOfertaCursos Dataflow: PreinscripciónCurso To-symbol: Validar Solicitudes Cursos [Process] Data within flow: PreinscripciónCurso Datastore: CURSOS Output flows going to [AND Connector]

Page 72: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 70/88

Data within store: @Nombre + Ámbito + Tutor + Administrador + Login + password + Duración + Fecha-inicio + EstadoCurso + Descripción + 0{CriterioSistema + Prioridad}N

Datastore: PREINSCRIPCIONES Update flows connected to Validar Solicitudes Cursos [Process] Data within store: @DNI + @Curso + 0{CriterioSistema}N Datastore: USUARIO DEL SISTEMA Output flows going to Validar Solicitudes Cursos [Process] going to Mostrar Cursos [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD4.2. Gestionar Matriculación Process: Aceptar Matriculación y cambios estados Minispec or Description: PRE1 Llega por MatriculaciónCurso una tupla DNI + Curso que aparece en ADMITIDOS,

DNI aparece en "USUARIO DEL SISTEMA" con Estado a Activa y Curso tiene correspondencia con un registro de CURSOS, en el que EstadoCurso es matriculación y Fecha-inicio + Duración es mayor que la fecha actual del sistema.

POST1 Se insertará en MATRICULADOS, si no existe, un nuevo registro con Curso, DNI y

DirCorreo (el del DNI en "USUARIO DEL SISTEMA"), y si existe el registro, se añade solo el DNI y DirCorreo. Se borrará de ADMITIDOS el DNI para que no se pueda volver a matricular.

* Actualizamos el estado de los cursos con este proceso * PRE2 Hay un registro en CURSOS en el que EstadoCurso es preinscripción y Fecha-inicio +

Duración es menor que la fecha actual. POST2 Se actualizará ese registro cambiando EstadoCurso por matriculación y Fecha-inicio y

Duración el que llegue del Administrador del Curso por OpAdminCambioEstadoCurso.

PRE3 Hay un registro en CURSOS en el que EstadoCurso es matriculación y Fecha-inicio +

Duración es menor que la fecha actual. POST3

Page 73: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 71/88

Se actualizará ese registro cambiando EstadoCurso por desarrollo y Fecha-inicio y Duración el que llegue del Administrador del Curso por OpAdminCambioEstadoCurso.

Process: Admitir Alumnos Minispec or Description: PRE1 Hay registros nuevos en el almacén PREINSCRIPCIONES y Curso aparece en un

registro del almacen "ADMINISTRADORES DE CURSOS". POST1 Se enviará por EvalAdmisión los datos del registro PREINSCRIPCIONES al

Administrador correspondiente del Curso de la preinscripción, es decir, al que tiene el DNI que se asocia con el Curso en el almacén "ADMINISTRADORES DE CURSOS" y que el estado de su cuenta sea Activa.

PRE2 Llega OpAdminAdminisiónAlumnos, con Administrador, un DNI que se asocia con el

Curso llegado en el almacén "ADMINISTRADORES DE CURSOS" y su Estado de la cuenta es Activa. Ningún DNI que llega por este flujo aparece 5 veces o más en el almacén ADMITIDOS *no permitir que un Docente se matricule de más de 5 asignaturas, mejor no hacerlo a la hora de matricular para asegurar las plazas a otros Docentes*.

POST2 Se inserta o reemplaza en ADMITIDOS los datos llegados. Process: Cancelar Cursos Minispec or Description: COMIENZA REPETIR LEER el siguiente registro de "ADMINISTRADORES DE CURSOS" en reg HASTA OpAdminCancelaciónCurso.DNI=reg.DNI SI OpAdminCancelaciónCurso.Curso está en reg ENTONCES REPETIR LEER el siguiente registro de "CURSOS" en reg2 HASTA OpAdminCancelaciónCurso.Curso=reg2.Curso reg2.EstadoCurso=cancelada. FIN-SI TERMINA Process: Consultar Matriculados Minispec or Description: PRE1 Llega un registro de matriculados del almacén MATRICULADOS. POST1 Se enviará por EvalMatriculados cada registro de MATRICULADOS al Administrador

del Curso ese registro (DNI que viene asociado a ese Curso en

Page 74: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 72/88

"ADMINISTRADORES DE CURSOS") y ese Administrador tiene EstadoCuenta=Activa.

Process: Enviar Autenticación Minispec or Description: PRE1 Se inserta un nuevo DNI + DirCorreo en un registro de MATRICULADOS. POST1 Se escribirá en CORREOS un correo con Receptor el DirCorreo nuevo, y

CuerpoMensaje la información del Curso del registro que se acaba de modificar, conseguida del almacén CURSOS.

Process: Extraer Administradores de Cursos Minispec or Description: PRE1 Existe en "USUARIO DEL SISTEMA" un registro con Nivel=AdCurso y DNI no está

en "ADMINISTRADORES DE CURSOS" POST1 El DNI, login, password y DirCorreo del registro encontrado se insertarán en el almacén

"ADMINISTRADORES DE CURSOS" Process: Penalizar Minispec or Description: COMIENZA LLEGA OpAdminPenalización *Ver si es realmente el administrador de un curso* REPETIR LEER siguiente registro de "ADMINISTRADORES DE CURSOS" en reg HASTA OpAdminPenalización.Administrador = reg.DNI PARA TODO registro reg2 de ADMITIDOS que contiene OpAdminPenalización.DNI SI reg2.Curso en el almacén CURSOS tiene EstadoCurso=desarrollo ENTONCES PARA TODO registro reg3 de MATRICULADOS en que reg2.Curso = reg3.Curso SI reg3 no contiene OpAdminPenalización.DNI ENTONCES ok<--TRUE SINO ok<--FALSE FIN-SI *En esta estructura de condición se ve si el docente a penalizar está en admitidos de un curso en desarrollo pero no en matriculados* FIN-PARA FIN-SI FIN-PARA SI ok=TRUE ENTONCES REPETIR LEER siguiente registro de "USUARIOS DEL SISTEMA" en reg

Page 75: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 73/88

HASTA OpAdminPenalización.DNI = reg.DNI reg.CuentaPenalizada=TRUE FIN-SI * Nótese que lo puede realizar cualquier administrador de Cursos, pero en cambio solo deja penalizar si el sistema comprueba que de verdad se cumple * TERMINA Dataflow: EvalAdmisión From-symbol: Admitir Alumnos [Process] Data within flow: EvalAdmisión Dataflow: EvalMatriculados From-symbol: Consultar Matriculados [Process] Data within flow: EvalMatriculados Dataflow: MatriculaciónCurso To-symbol: Aceptar Matriculación y cambios estados [Process] Data within flow: MatriculaciónCurso Dataflow: OpAdminAdmisiónAlumnos To-symbol: Admitir Alumnos [Process] Data within flow: OpAdminAdmisiónAlumnos Dataflow: OpAdminCambioEstadoCurso To-symbol: Aceptar Matriculación y cambios estados [Process] Data within flow: OpAdminCambioEstadoCurso Dataflow: OpAdminCancelaciónCurso To-symbol: Cancelar Cursos [Process] Data within flow: OpAdminCancelaciónCurso Dataflow: OpAdminPenalización To-symbol: Penalizar [Process] Data within flow: OpAdminPenalización Datastore: ADMINISTRADORES DE CURSOS Output flows going to Admitir Alumnos [Process] going to Cancelar Cursos [Process] going to Penalizar [Process] going to Consultar Matriculados [Process] Update flows connected to Extraer Administradores de Cursos [Process] Data within store: @DNI + DirCorreo + Estado + 1{Curso}N Datastore: ADMITIDOS Output flows going to Penalizar [Process] Update flows

Page 76: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 74/88

connected to Aceptar Matriculación y cambios estados [Process] connected to Admitir Alumnos [Process] Data within store: @Curso + 0{DNI}MaxAlumnos Datastore: CRITERIOS ADMISIÓN Output flows going to Admitir Alumnos [Process] Data within store: @Código + Texto Datastore: CURSOS Output flows going to Admitir Alumnos [Process] going to Penalizar [Process] going to Enviar Autenticación [Process] Update flows connected to Aceptar Matriculación y cambios estados [Process] connected to Cancelar Cursos [Process] Data within store: @Nombre + Ámbito + Tutor + Administrador + Login + password

+ Duración + Fecha-inicio + EstadoCurso + Descripción + 0{CriterioSistema + Prioridad}N

Datastore: MATRICULADOS Input flows coming from Aceptar Matriculación y cambios estados [Process] Output flows going to Consultar Matriculados [Process] going to Enviar Autenticación [Process] going to Penalizar [Process] Data within store: @Curso + 5{DNI + DirCorreo}MaxAlumnos Datastore: PREINSCRIPCIONES Output flows going to Admitir Alumnos [Process] Data within store: @DNI + @Curso + 0{CriterioSistema}N Datastore: USUARIO DEL SISTEMA Output flows going to Extraer Administradores de Cursos [Process] going to Aceptar Matriculación y cambios estados [Process] Update flows connected to Penalizar [Process] Data within store: Nombre + Apellidos + @DNI + FechaNacimiento + Dirección +

DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

DFD4.3. Gestionar Desarrollo Curso

Page 77: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 75/88

Process: Controlar Alumnos Minispec or Description: PRE1 Llega el flujo de datos AccesoCurso con DNI +Curso +Login +password, DNI está en

el registro correspondiente a Curso en el almacén MATRICULADOS, si se encuentra, y NO está en "ALUMNOS CURSOS". Login y password corresponden a los asociados a Curso en el almacén CURSOS.

POST1 Se insertará en "ALUMNOS CURSOS" una tupla con DNI y Curso. PRE2 Llega el flujo de datos AccesoCurso con DNI +Curso +Login +password, DNI está en

el registro correspondiente a Curso en el almacén MATRICULADOS, si se encuentra, y está en "ALUMNOS CURSOS". Login y password corresponden a los asociados a Curso en el almacén CURSOS.

POST2 Se eliminará de "ALUMNOS CURSOS" la tupla con DNI y Curso. Process: Gestionar Foro Minispec or Description: PRE1 Llega por el flujo ParticipaciónForo un DNI que está asociado al Nombre del foro en el

campo Respuesta del flujo en el almacén FOROS. Ese foro tiene asociado un NombreCurso, que tiene correspondencia con un curso del almacén CURSOS. DNI y NombreCurso aparecen en un registro de "ALUMNOS CURSOS".

POST1 Se añadirá la Respuesta llegada por el flujo en el registro correspondiente al Nombre del

foro del almacén FOROS. Se inclurá DNI, Texto de la respuesta y Hora-llegada como hora actual del sistema.

PRE2 Hay nuevas Respuestas en un registro del almacén FOROS que tiene asociado un

campo NombreCurso. POST2 Se enviarán estas respuestas junto al Código del foro a los docentes cuyos DNI y

NombreCurso aparecen en "ALUMNOS CURSOS" por el flujo EvalForoDocente, y por EvalForoTutor al tutor que aparece asociado a NombreCurso en el almacén TUTORES.

PRE3 Llega por el flujo ControlForoTutor un DNI que está asociado al Nombre del foro en el

campo Respuesta del flujo en el almacén FOROS. Ese foro tiene asociado un NombreCurso, que tiene correspondencia con un curso del almacén CURSOS. DNI y NombreCurso aparecen en un registro de "TUTORES".

POST3 Se añadirá la Respuesta llegada por el flujo en el registro correspondiente al Nombre del

foro del almacén FOROS. Se inclurá DNI, Texto de la respuesta y Hora-llegada como hora actual del sistema.

Page 78: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 76/88

PRE4 No se cumple nada de lo anterior. POST4 Se enviará un mensaje de error indicando la cancelación de la operación. Dataflow: AccesoCurso To-symbol: Controlar Alumnos [Process] Data within flow: AccesoCurso Dataflow: ControlDesarrolloTutor From-symbol: [XOR Connector] To-symbol: Desarrollar Curso [Process] Data within flow: ControlDesarrolloTutor Dataflow: ControlForoTutor From-symbol: [XOR Connector] To-symbol: Gestionar Foro [Process] Data within flow: AccesoDocenteForos Dataflow: EvalCurso From-symbol: [XOR Connector] To-symbol: Tutor [External] Data within flow: [ EvalDocenteForos | EvalTutorEjercicios ] Dataflow: EvalDesarrolloDocente From-symbol: Desarrollar Curso [Process] Data within flow: EvalDesarrolloDocente Dataflow: EvalForoDocente From-symbol: Gestionar Foro [Process] Data within flow: EvalDocenteForos Dataflow: EvalForoTutor From-symbol: Gestionar Foro [Process] To-symbol: [XOR Connector] Data within flow: EvalDocenteForos Dataflow: EvalTutorEjercicios From-symbol: Desarrollar Curso [Process] To-symbol: [XOR Connector] Data within flow: EvalTutorEjercicios Dataflow: GestiónCurso From-symbol: Tutor [External] To-symbol: [XOR Connector] Data within flow: [ AccesoDocenteForos | ControlDesarrolloTutor ] Dataflow: ParticipaciónDesarrollo To-symbol: Desarrollar Curso [Process]

Page 79: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 77/88

Data within flow: ParticipaciónDesarrollo Dataflow: ParticipaciónForo To-symbol: Gestionar Foro [Process] Data within flow: AccesoDocenteForos Datastore: ALUMNOS CURSOS Output flows going to Gestionar Foro [Process] going to Desarrollar Curso [Process] Update flows connected to Controlar Alumnos [Process] Data within store: @Curso + @DNI Datastore: CURSOS Output flows going to Gestionar Foro [Process] going to Desarrollar Curso [Process] going to Controlar Alumnos [Process] Data within store: @Nombre + Ámbito + Tutor + Administrador + Login + password

+ Duración + Fecha-inicio + EstadoCurso + Descripción + 0{CriterioSistema + Prioridad}N

Datastore: FOROS Update flows connected to Gestionar Foro [Process] Data within store: @Código + Administrador + (NombreCurso) + Descripción + 1{DNI}N + 0{DNI + Texto + Hora-llegada}MaxRespuestas Datastore: MATRICULADOS Output flows going to Desarrollar Curso [Process] going to Controlar Alumnos [Process] Data within store: @Curso + 5{DNI + DirCorreo}MaxAlumnos Datastore: TUTORES Output flows going to Gestionar Foro [Process] going to Desarrollar Curso [Process] Data within store: @DNI + DirCorreo + 1{Curso}N

DFD4.3.3. Desarrollar Curso

Process: Admitir Respuestas Minispec or Description: PRE1 Llega una tupla DNI +Práctica +Número +Texto por el flujo Respuestas, DNI aparece

en el almacén "ALUMNOS CURSOS", el Curso de la Práctica está asociado a un registro del almacén anterior que contiene DNI de la tupla, DNI, Práctica y

Page 80: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 78/88

Número no están en el almacén "NO OTRA OPORTUNIDAD" ni en "RESPUESTAS ALUMNOS" y Fecha-inicio + Duración de la Práctica no es mayor que la hora actual del sistema.

POST1 Se almacena en "RESPUESTAS ALUMNOS" DNI, Práctica, Número, Texto y

TipoEjercicio (conseguido del almacén EJERCICIOS) y en "NO OTRA OPORTUNIDAD" DNI, práctica y Número.

PRE2 Llega una tupla DNI +Práctica +Número +Texto por el flujo Respuestas, DNI aparece

en el almacén "ALUMNOS CURSOS", el Curso de la Práctica está asociado a un registro del almacén anterior que contiene DNI de la tupla, DNI, Práctica y Número no están en el almacén "NO OTRA OPORTUNIDAD" y sí en "RESPUESTAS ALUMNOS" y Fecha-inicio + Duración de la Práctica no es mayor que la hora actual del sistema.

POST2 Se actualiza Texto del registro encontrado en "RESPUESTAS ALUMNOS" que

concuerda con DNI, Práctica y Número y en "NO OTRA OPORTUNIDAD" DNI, práctica y Número.

PRE3 Llega una tupla DNI +Práctica +Número +Texto por el flujo Respuestas, DNI aparece

en el almacén "ALUMNOS CURSOS", el Curso de la Práctica está asociado a un registro del almacén anterior que contiene DNI de la tupla, DNI, Práctica y Número están en el almacén "NO OTRA OPORTUNIDAD".

POST3 Se envía un mensaje de error indicando que no puede volver a contestar la pregunta. PRE4 No se cumple ninguna precondición anterior. POST4 Se envía un mensaje de error indicando la imposibilidad de realizar la operación. Process: Corregir Ejercicios Minispec or Description: PRE1 Existe un registro en "RESPUESTAS ALUMNOS" cuyo TipoEjercicio es test y

Práctica y Número de ese registro aparecen en uno de los del almacén "RESPUESTAS". Se comprueba texto del registro de "RESPUESTAS ALUMNOS" que contendrá normalmente una letra indicando la respuesta contestada, y texto del registro de "RESPUESTAS" y resulta ser igual.

POST1 Ejercicio correcto, por lo tanto: se inserta en CALIFICACIONES, si no existe, un

registro con DNI y Práctica conseguidos del registro encontrado en "RESPUESTAS ALUMNOS" y Puntuación la del registro concordante del almacén "RESPUESTAS". Si ya existía este registro en CALIFICACIONES, se actualiza sumando a Puntuación la del registro de "RESPUESTAS". Se elimina el registro correspondiente del "RESPUESTAS ALUMNOS".

Page 81: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 79/88

PRE2 Existe un registro en "RESPUESTAS ALUMNOS" cuyo TipoEjercicio es test y

Práctica y Número de ese registro aparecen en uno de los del almacén "RESPUESTAS". Se comprueba texto del registro de "RESPUESTAS ALUMNOS" que contendrá normalmente una letra indicando la respuesta contestada, y texto del registro de "RESPUESTAS" y resulta ser distinto.

POST2 Ejercicio correcto, por lo tanto: se inserta en CALIFICACIONES, si no existe, un

registro con DNI y Práctica conseguidos del registro encontrado en "RESPUESTAS ALUMNOS" y Puntuación 0. Si ya existía este registro en CALIFICACIONES, no se hace nada.

PRE3 Existe un registro nuevo en "RESPUESTAS ALUMNOS" cuyo TipoEjercicio es

desarrollo y Práctica y Número de ese registro aparecen en uno de los del almacén "RESPUESTAS". Curso de Práctica está en CURSOS

POST3 Se enviarán los datos de este nuevo registro por el flujo de salida EvalTutorEjercicios al

Tutor asociado al Curso en el almacén CURSOS. PRE4 Llega por el flujo de datos CorrecciónEjercicios un Tutor cuyo DNI que está en el

almacén TUTORES, el Curso asociado a la Práctica llegada desde el flujo está en uno de los que tiene asociado este DNI en TUTORES. El DNI llegado por el flujo (no es el del Tutor, el del docente) tiene asociado en CURSOS el Curso de la práctica, y DNI, Práctica y Número tiene un registro en "RESPUESTAS ALUMNOS".

POST4 Se insertará en CALIFICACIONES, si no existe, un registro con DNI y Práctica

conseguidos del registro encontrado en "RESPUESTAS ALUMNOS" y Puntuación la llegada por CorrecciónEjercicios. Si ya existía este registro en CALIFICACIONES, se actualizará Puntuación con la suma del valor anterior y el actual. Se elimina el registro concordante de "RESPUETAS ALUMNOS".

PRE5 No se cumple nada de lo anterior. POST5 Se enviará un mensaje de error indicando de la cancelación de la operación. Process: Evaluar Alumnos Minispec or Description: PRE1 Llega por el flujo EvaluaciónAlumnos un Tutor cuyo DNI aparece asociado a Curso en

un registro del almacén CURSOS, y en este registro, Fecha-inicio + Duración es igual o menor que la fecha actual del sistema. El DNI llegado tiene asociado el Curso en el almacén MATRICULADOS.

POST1 Se enviará a CORREOS un mensaje con Receptor=DirCorreo asociado al DNI en

MATRICULADOS, Estado pendiente y Texto indicando la finalización del

Page 82: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 80/88

curso más la Puntuación llegada por el flujo más la información en CALIFICACIONES asociada a ese DNI y Curso.

PRE2 No se cumple PRE1. POST2 Se enviará un mensaje de error indicando la cancelación de la operación. Process: Mostrar Ejercicios Minispec or Description: PRE1 Llega por el flujo de datos Ejercicios (DNI +Práctica +Número) un DNI que está en

"ALUMNOS CURSOS", el Curso de la Práctica llegada está asociado a este DNI en un registro del almacén anterior, Práctica y Número a un registro del almacén EJERCICIOS.

POST1 Se devuelve al Docente que ha pedido este ejercicio por el flujo EvalTemas la

información del registro encontrado en el almacén EJERCICIOS: Práctica +Número +Texto +Puntuación +TipoEjercicio.

PRE2 No se cumple ninguna de las condiciones de PRE1 POST2 Se envía un mensaje de error indicando que se ignora la operación. Process: Mostrar Notas Minispec or Description: PRE1 Existe un registro, no enviado, en CALIFICACIONES en el que Fecha-inicio +

Duración del campo Práctica es igual que la fecha actual del sistema o inferior, DNI y Curso de la Práctica del registro está en "ALUMNOS CURSOS" y también en "MATRICULADOS".

POST1 Se enviará por el flujo EvalNotas la Práctica y Puntuación correspondiente al registro

encontrado en CALIFICACIONES al docente con DNI el que aparece en CALIFICACIONES.

Purpose: Process: Mostrar Temas Minispec or Description: PRE1 Llega por el flujo de datos Temas (DNI +Curso +Nombre) un DNI que está en

"ALUMNOS CURSOS", el Curso llegado está asociado a este DNI en un registro del almacén anterior y Nombre pertenece al nombre de un Tema del Curso que llega buscando en el almacén TEMAS.

POST1

Page 83: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 81/88

Se devuelve al Docente que ha pedido este tema por el flujo EvalTemas la información del registro encontrado en el almacén TEMAS: Curso + Nombre + Descripción + Práctica.

PRE2 No se cumple ninguna de las condiciones de PRE1 POST2 Se envía un mensaje de error indicando que se ignora la operación. Dataflow: CorrecciónEjercicios To-symbol: Corregir Ejercicios [Process] Data within flow: CorrecciónEjercicios Dataflow: Ejercicios To-symbol: Mostrar Ejercicios [Process] Data within flow: Ejercicios Dataflow: EvalEjercicios From-symbol: Mostrar Ejercicios [Process] Data within flow: EvalEjercicios Dataflow: EvalNotas From-symbol: Mostrar Notas [Process] Data within flow: EvalNotas Dataflow: EvalTemas From-symbol: Mostrar Temas [Process] Data within flow: EvalTemas Dataflow: EvalTutorEjercicios From-symbol: Corregir Ejercicios [Process] Data within flow: EvalTutorEjercicios Dataflow: EvaluaciónAlumnos To-symbol: Evaluar Alumnos [Process] Data within flow: EvaluaciónAlumnos Dataflow: Respuestas To-symbol: Admitir Respuestas [Process] Data within flow: Respuestas Dataflow: Temas To-symbol: Mostrar Temas [Process] Data within flow: Temas Datastore: ALUMNOS CURSOS Output flows going to Mostrar Temas [Process] going to Mostrar Notas [Process]

Page 84: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 82/88

going to Admitir Respuestas [Process] going to Mostrar Ejercicios [Process] Data within store: @Curso + @DNI Datastore: CALIFICACIONES Input flows coming from Corregir Ejercicios [Process] Output flows going to Evaluar Alumnos [Process] going to Mostrar Notas [Process] Data within store: @DNI + @Práctica + Puntuación Datastore: CURSOS Output flows going to Mostrar Temas [Process] going to Mostrar Ejercicios [Process] going to Corregir Ejercicios [Process] going to Evaluar Alumnos [Process] Data within store: @Nombre + Ámbito + Tutor + Administrador + Login + password

+ Duración + Fecha-inicio + EstadoCurso + Descripción + 0{CriterioSistema + Prioridad}N

Datastore: EJERCICIOS Output flows going to Mostrar Ejercicios [Process] going to Admitir Respuestas [Process] Data within store: @Práctica + @Número + Texto + Puntuación + TipoEjercicio Datastore: MATRICULADOS Output flows going to Admitir Respuestas [Process] going to Evaluar Alumnos [Process] going to Mostrar Notas [Process] Data within store: @Curso + 5{DNI + DirCorreo}MaxAlumnos Datastore: NO OTRA OPORTUNIDAD Input flows coming from Corregir Ejercicios [Process] Output flows going to Admitir Respuestas [Process] Data within store: @DNI + @Práctica + @Número Datastore: RESPUESTAS Output flows going to Corregir Ejercicios [Process] Data within store: @Práctica + @Número + Texto + Puntuación Datastore: RESPUESTAS ALUMNOS Update flows connected to Corregir Ejercicios [Process]

Page 85: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 83/88

connected to Admitir Respuestas [Process] Data within store: @DNI + @Práctica + @Número + Texto + TipoEjercicio Datastore: TEMAS Output flows going to Mostrar Temas [Process] Data within store: @Curso + @Nombre + Descripción + Práctica Datastore: TUTORES Output flows going to Corregir Ejercicios [Process] going to Evaluar Alumnos [Process] Data within store: @DNI + DirCorreo + 1{Curso}N DEFINICIONES DE ELEMENTOS COMPUESTOS (data structure): Formato: <<NOMBRE>> COMPOSICIÓN. <<AccesoCurso>> DNI + Curso + Login +password <<AccesoDocenteCorreo>> [ OpDocenteEnvíoCorreo |

OpDocenteSolicitudListaDistrib ] <<AccesoDocenteForos>>[ DNI + Respuesta | OpDocenteConsultaForo |

PeticiónEntrarForo ] <<AccesoDocenteTablonAnunc>> DNI + Tablón + Anuncios <<AccesoRecDocumental>> [ AccesoDocenteForos | AccesoDocenteTablonAnunc | AccesoDocenteCorreo ] <<Administrador>> DNI <<Anuncios>> Código + Hora-llegada + Autor + Texto <<Autor>> DNI <<BúsquedaNoticias>> (Código) + (Hora-llegada) + (Autor) + (Ámbito) + (Texto) <<BúsquedaRecursosDidácticos>> OpciónBusquedaRecursos <<Centro>> Nombre <<ConsultaForos>> Código + 0{Respuesta}N <<ConsultaNoticias>> 0{Noticia}N <<ConsultaRecursos>> Nombre + Autor + Descripción + TipoRecurso <<ControlDesarrolloTutor>> [ EvaluaciónAlumnos | CorrecciónEjercicios ] <<CorrecciónEjercicios>> DNI + Práctica + Número + Puntuación + Tutor <<CriterioSistema>> Código + Descripción <<Curso>> Nombre <<DesarrolloCurso>> [ AccesoCurso | ParticipaciónDesarrollo | AccesoDocenteForos ] <<Ejercicios>> DNI + Práctica + Número <<Emisor>> Nombre + DirCorreo <<EvalAdminActualizacionCuentas>> DNI + (Dirección) + (DirecciónProfesional) +

(categoríaProf) + (Nivel) + (DirCorreo)+ (login) +(password) + (Expiración) + (Estado)

<<EvalAdminActualizaciónListasAdministración>> DNI + DirCorreo + CodigoLista <<EvalAdminBusquedaNoticias>> 0{Noticia}N <<EvalAdminBusquedaRecDidc>> 0{Código + Nombre + Autor + AdministradorAlta

+ Descripción + TipoRecurso}N <<EvalAdminConsultaAnuncios>> Anuncios

Page 86: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 84/88

<<EvalAdminConsultaCorreo>> Emisor + CuerpoMensaje + Hora-llegada <<EvalAdminConsultaCuenta>> Nombre + Apellidos + DNI + FechaNacimiento +

Dirección + DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

<<EvalAdminConsultaListaDistribución>> CodigoLista + Descripción + Miembros <<EvalAdminConsultaUsuarios>> Nombre + Apellidos + DNI + FechaNacimiento +

Dirección + DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

<<EvalAdminCorreo>> [EvalAdminListasDistribución | EvalAdminConsultaCorreo] <<EvalAdminCursos>> [ EvalAdmisión | EvalMatriculados ] <<EvalAdminEliminaciónNoticias>> Código + Hora-llegada + Autor + Ámbito +

Texto <<EvalAdminEliminaciónRecDidacticos>> DNI + Código <<EvalAdminEnvioCorreoALD>> @Emisor + @Receptor +@Hora-llegada +

CuerpoMensaje <<EvalAdminForos>> Código + 0{Respuesta}N <<EvalAdminListasDistribución>> [EvalAdminConsultaListaDistribución |

EvalAdminActualizaciónListasAdministración] <<EvalAdminNoticias>> EvalAdminEliminaciónNoticias <<EvalAdminRecDidacticos>> [EvalAdminEliminaciónRecDidacticos | EvalAdminBusquedaRecDidc ] <<EvalAdminRecDocumentales>> [ EvalAdminCorreo | EvalAdminRecDidacticos | EvalAdminTablonAnunc | EvalAdminNoticias | EvalAdminForos ] <<EvalAdminTablonAnunc>> [ EvalAdminConsultaAnuncios |

EvalAdminValidaciónAnuncios ] <<EvalAdminUsuarios>> [ EvalAdminActualizacionCuentas

|EvalAdminConsultaUsuarios | EvalAdminConsultaCuenta ] <<EvalAdminValidaciónAnuncios>> Tablón + Anuncios <<EvalAdmisión>> Curso + 0{DNI + 0{CriterioSistema}N}N <<EvalCuentaDocente>> Nombre + Apellidos + DNI + FechaNacimiento + Dirección

+ DirecciónProfesional + categoríaProf + Nivel + DirCorreo + AdministradorAlta + login + password + cuota + Expiración + Estado + CuentaPenalizada

<<EvalDesarrolloCurso>> [ EvalDocenteForos | EvalDesarrolloDocente ] <<EvalDesarrolloDocente>> [ EvalTemas | EvalEjercicios | EvalNotas ] <<EvalDocenteAnuncios>> Anuncios <<EvalDocenteConsultaCorreo>> Emisor + CuerpoMensaje + Hora-llegada <<EvalDocenteCorreo>> [EvalDocenteListasDistribución |

EvalDocenteConsultaCorreo] <<EvalDocenteCurso>> [ EvalDesarrolloCurso | EvalOfertaCursos ] <<EvalDocenteForos>> Código + 0{Respuesta}N <<EvalDocenteListasDistribución>> CodigoLista + Descripción + Miembros <<EvalEjercicios>> Práctica + Número + Texto + Puntuación + TipoEjercicio <<EvalMatriculados>> @Curso + 5{DNI}N <<EvalNotas>> Práctica + Puntuación <<EvalOfertaCursos>> Nombre + Ámbito + Tutor + Duración + Fecha-inicio +

EstadoCurso + Descripción + 0{CriterioSistema + Prioridad}N <<EvalRMIIncidencia>> 0{Código + Hora-llegada+ Descripción + Centro +

EstadoIncidencia + CPR + (Técnico + Tiempo-Respuesta + causa)}N

Page 87: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 85/88

<<EvalRecDocum>> [ EvalDocenteForos | EvalDocenteAnuncios |EvalDocenteCorreo] <<EvalTemas>> Curso + Nombre + Descripción +Práctica <<EvalTutorEjercicios>> DNI + Práctica + Número + Texto <<EvaluaciónAlumnos>> DNI + Curso + Puntuación + Tutor <<MatriculaciónCurso>> DNI + Curso <<Miembros>> 1{DirCorreo}N <<NombreCurso>> Nombre <<Noticia>> @Código + Hora-llegada + Autor + Ámbito + Texto <<OpAdminActualizCuentas>> [ OpAdminModificarCuenta |OpAdminCambioCuenta] <<OpAdminActualizListaDistrib>>DNI +DirCorreo +CodigoLista +

0{DNI}MaxMiembrosLD <<OpAdminActualizacionNoticias>> DNI + Noticia <<OpAdminActualizarRecDidácticos>> DNI + Código <<OpAdminAdmisiónAlumnos>> Administrador + Curso + 0{DNI}MaxAlumnos <<OpAdminCambioContraseña>> DNI + password <<OpAdminCambioCuenta>> DNI + (Dirección) + (DirecciónProfesional) +

(categoríaProf) + (Nivel) + (DirCorreo) + (login) + (Estado) + (Expiración) +(cuota)

<<OpAdminCambioEstadoCurso>> DNI+ Curso + Fecha-inicio + Duración <<OpAdminCancelaciónCurso>> DNI + Curso <<OpAdminConsultaForo>> DNI + Curso <<OpAdminCorreo>> [ OpAdminListasDistribución | OpAdminEnvíoCorreo ] <<OpAdminCursos>> [ OpAdminPenalización | OpAdminAdmisiónAlumnos | OpAdminCancelaciónCurso | OpAdminCambioEstadoCurso] <<OpAdminEliminaciónNoticias>> DNI + Código <<OpAdminEliminarRecDidácticos>> DNI + Código <<OpAdminEnvíoCorreo>> DNI + DirCorreo + [Receptor|CodigoLista] +

CuerpoMensaje <<OpAdminForos>> [ OpAdminConsultaForo | OpAdminValidarRespuesta | OpAdminRespuesta | PeticiónEntrarForo] <<OpAdminListasDistribución>> [OpAdminSolicitudListaDistrib | OpAdminActualizListaDistrib

|OpAdminValidaCorreoALD] <<OpAdminModificarCuenta>> Administrador + DNI + (Nombre + Apellidos + FechaNacimiento + login + password)

+ (cuota) + (Dirección) + (DirecciónProfesional) + (categoríaProf) + (Nivel) + (DirCorreo) + (Expiración) + (Estado) + (CuentaPenalizada)

<<OpAdminNoticias>> [ OpAdminEliminaciónNoticias | OpAdminActualizacionNoticias |

OpAdminNuevasNoticias ] <<OpAdminNuevasNoticias>> DNI + Noticia <<OpAdminNuevoAnuncio>> DNI + Tablón + Anuncios <<OpAdminNuevoRecursoDidáctico>> DNI + Nombre + Descripción + Autor +

TipoRecurso + AdministradorAlta <<OpAdminPenalización>>Administrador + DNI <<OpAdminRecDidacticos>> [ OpAdminEliminarRecDidácticos |

OpAdminActualizarRecDidácticos | OpAdminNuevoRecursoDidáctico] <<OpAdminRecDocumentales>> [ OpAdminCorreo | OpAdminRecDidacticos | OpAdminTablonAnunc |

OpAdminNoticias | OpAdminForos ]

Page 88: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 86/88

<<OpAdminRespuesta>> DNI + Respuesta <<OpAdminSolicitudListaDistrib>> DNI + DirCorreo + CodigoLista <<OpAdminTablonAnunc>> [ OpAdminValidaciónAnuncio |OpAdminNuevoAnuncio] <<OpAdminUsuarios>> [ OpAdminCambioContraseña | OpAdminActualizCuentas ] <<OpAdminValidaCorreoALD>> DNI+ Emisor + Receptor + Hora-llegada + ok <<OpAdminValidaciónAnuncio>> DNI + Tablón + Código <<OpAdminValidarRespuesta>> DNI + Código + DNI <<OpCuentaDocente>> [OpDocenteActualizCuenta |OpDocenteCambioContraseña] <<OpDocenteActualizCuenta>>DNI + (Dirección) + (DirecciónProfesional) +

(categoríaProf) + (Nivel) + (DirCorreo)+ (login) + (Estado) +(Expiración) + (cuota)

<<OpDocenteActualizarPágina>> DNI+ Nombre <<OpDocenteCambioContraseña>> DNI +password <<OpDocenteConsultaForo>> DNI + Código <<OpDocenteEnvíoCorreo>> DNI + DirCorreo + Receptor + CuerpoMensaje <<OpDocenteSolicitudListaDistrib>> DNI +DirCorreo <<OpRMIConsultaIncidencia>> DNI + (Hora-llegada) + (Descripción) + (Centro) + (CPR) + (EstadoIncidencia) + (causa) + (Técnico) <<OpRMIIncidencia>> [OpRMINuevaIncidencia |OpRMIConsultaIncidencia] <<OpRMINuevaIncidencia>> DNI + (EstadoIncidencia + Código) + Descripción <<OpciónBusquedaRecursos>> (Nombre) + (Código) + (Autor) + (TipoRecurso) <<ParticipaciónDesarrollo>> [ Temas | Ejercicios | Respuestas ] <<ParticiparCurso>> [ DesarrolloCurso | MatriculaciónCurso | PreinscripciónCurso ] <<PeticiónEntrarForo>> DNI + Código <<PreinscripciónCurso>> DNI + Curso + 0{CriterioSistema}N <<Práctica>> Curso + Nombre + Número + Duración + Fecha-inicio <<RMI>> DNI <<Receptor>> DirCorreo <<Respuesta>> Nombre + Texto <<Respuestas>> DNI + Práctica + Número + Texto <<Tablón>> Nombre <<Temas>> DNI + Curso + Nombre <<Tutor>> DNI + DirCorreo <<Técnico>> DNI + [ CPR | Regional ] + DirCorreo <<causa>> Texto DEFINICIONES DE ELEMENTOS (data element):

Name Description SQL Data Type Domain

AdministradorAlta DNI del administrador que le dió de alta character

AdministradorLista DNI del Administrador de la Lista character

Apellidos Apellidos paternos y maternos del profesor character

CPR Puede contener el nombre de uno de los 7 CPR de la región. character

CodigoLista Código de la lista character

CuentaPenalizada Indica la fecha de fin de la penalización de la cuenta, impidiendo date

Page 89: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 87/88

Name Description SQL Data Type Domain

la participación de ésta en los cursos virtuales.

Si está a NULL, no está penalizado.

CuerpoMensaje Contiene demás cabeceras de emails, como extensiones, CC, etc. y el texto

del mensaje. character

Código Único en el conjunto de datos del sistema character

DNI

Los siete números del DNI más la letra, por lo tanto, 8 caracteres. Con esto es suficiente para diferenciar a cada usuario en el sistema. Queda

parte de la implementación el asegurarse que el DNI que llega por el

flujo pertenece verdaderamente al usuario que lo emite.

character

DNICliente

Los siete números del DNI más la letra, por lo tanto, 8 caracteres. Con esto es suficiente para diferenciar a cada usuario en el sistema. Queda

parte de la implementación el asegurarse que el DNI que llega por el

flujo pertenece verdaderamente al usuario que lo emite.

character

Descripción Breve descripción del elemento, su propósito, etc. character

DirCorreo Dirección de correo: nombre@dominio character

Dirección calle + número + (piso) + (letra) + localidad + codigoPostal character

DirecciónProfesional

- Para los docentes, el centro al que pertenecen.

- Para los administradores, si pertenecen a otra organización,

despacho, etc.

character

Duración Tiempo de duración del evento time

Estado

Activa (Está dentro del sistema) Inactiva (No está dentro del istema,

pero podrá estarlo). Cancelada (No está dentro del sistema,

pero no puede estarlo) Nueva (se crea al aceptar un nuevo usuario, se cambia este estado al

enviar los datos por correo) Modificada (se ha cambiado sus datos personales, se cambia este estado al

enviar los datos por correo).

character "[ Activa | Inactiva | cancelada | nueva |

modificada]"

Estado-correo character "[enviado, recibido, pendiente, leído]"

EstadoCurso character "[ preinscripción |

matriculación | desarrollo | finalizado | cancelada ]"

EstadoIncidencia character "[ pendiente, trámite, resuelta, cancelada ]"

Expiración Fecha en el que expirará la cuenta date Fecha-inicio Fecha del comienzo del evento date

FechaNacimiento Fecha de nacimiento del profesor date Hora-llegada Hora y día en que llegó el correo datetime

Page 90: FACULTAD DE INFORMÁTICA UNIVERSIDAD DE MURCIA

[email protected] Práctica Fundamentos de Ingeniería del Software

José Luis Abellán Miguel, Miguel Ángel Martínez del Amor 88/88

Name Description SQL Data Type Domain

Login Login del curso character

MaxAlumnos Número máximo de alumnos por

curso, según lo dicte el correspondiente Administrador.

integer

MaxAnuncios Número máximo de anuncios por tablón. integer

MaxMiembrosLD Número máximo de miembros en una lista de distribución integer

MaxRespuestas Número máximo de respuestas por foro. integer

N Número máximo admitible por los procesos del sistema. integer

Nivel character

"<Primario,Secundario,RMI,AdCurso,AdUsu,AdRec,AdNotic,AdLDistrib

,AdForo,AdTAnunc>" Nombre Nombre del profesor character Número Número entero de 5 dígitos. integer Prioridad Prioridad de 0 a 10 integer

Puntuación Puntuación de 0 a 10 con decimales float

Regional Indica que el ámbito de esta entidad es para toda la Región character

Texto Un texto de 1000 caracteres. character

Tiempo-Respuesta Duración de respuesta desde el alta a la baja. time

TipoEjercicio character "[ test | desarrollo ]"

TipoRecurso character "[ud-didáctica | presentación-multimedia]"

categoríaProf character "[Docente | Administrador]"

cuota tamaño de la cuota de disco asignada float login login para entrar a la zona restringida character

ok 1 es verdadero, 0 es falso bit

password Password para entrar a la zona restringida character

Ámbito Ámbito o alcance del elemento. character