Obligatorio Ingenieria Del Software

Ingeniería del software – 3° año – trabajo final INET Profesorado de informática. Curso 2013 Docente tutor: Prof. Gabri

Views 122 Downloads 0 File size 137KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Ingeniería del software – 3° año – trabajo final

INET Profesorado de informática. Curso 2013 Docente tutor: Prof. Gabriel Matonte.

Ingeniería del software Trabajo final

Autores: Pablo Macón – C.I.: 1.761.532-3 - 3°B Victor Méndez – C.I.: 4.635.262-1 - 3°B Rodrigo Simbrelo – C.I.: 4.130.185-9 - 3°B

INET – Profesorado de informática- Curso 2013

1

Ingeniería del software – 3° año – trabajo final

1

Índice

1

Índice........................................................................................................... 2

2

ESRE .......................................................................................................... 4 2.1

Introducción........................................................................................... 4

2.1.1

Identificación................................................................................... 4

2.1.2

Propósito del ESRE. ....................................................................... 4

2.1.3

Alcance del Producto...................................................................... 4

2.1.4

Glosario. ......................................................................................... 4

2.1.5

Referencias..................................................................................... 5

2.1.6

Generalidades del ESRE. ............................................................... 5

2.2

Descripción General.............................................................................. 5

2.2.1

Perspectiva del Producto. ............................................................... 5

2.2.2

Funciones del Producto. ................................................................. 6

2.2.3

Características de los usuarios....................................................... 6

2.2.4

Restricciones Generales................................................................. 7

2.2.5

Supuestos y dependencias............................................................. 8

2.3

Requerimientos ..................................................................................... 9

2.3.1

Requerimientos Funcionales. ......................................................... 9

2.3.1.1

Requerimiento Funcional 1: Alta de usuarios........................... 9

2.3.1.2

Requerimiento Funcional 2: Baja de usuarios.......................... 9

2.3.1.3

Requerimiento Funcional 3: Modificación de usuarios. ............ 9

2.3.1.4

Requerimiento Funcional 4: Alta de horas disponibles. ......... 10

2.3.1.5

Requerimiento Funcional 5: Baja de horas disponibles. ........ 10

2.3.1.6

Requerimiento Funcional 6: Modificación de horas disponibles. 10

2.3.1.7

Requerimiento Funcional 7: Realizar acto de elección. ......... 11

2.3.1.8 Requerimiento Funcional 8: Listado de docentes con más de 50 horas en el centro. ............................................................................ 12 2.3.1.9 Requerimiento Funcional 9: Horas que tomó un determinado docente en la última elección. ............................................................... 12 2.3.1.10 Requerimiento Funcional 10: Listado de docentes que tomaron determinada materia.............................................................................. 12 2.3.1.11 Requerimiento Funcional 11: Listado de materias dictadas en el instituto con la cantidad de docentes que la dictan............................ 13

INET – Profesorado de informática- Curso 2013

2

Ingeniería del software – 3° año – trabajo final

2.3.2

Requerimientos de Interfaz Externa. ............................................ 13

2.3.2.1

Interfaces con el Usuario........................................................ 13

2.3.2.2

Interfaces con otros Sistemas. ............................................... 13

2.3.2.3

Interfaces de comunicación.................................................... 13

2.3.3

Restricciones de Diseño. .............................................................. 14

2.3.3.1

Requerimientos de hardware. ................................................ 14

2.3.3.2

Requerimientos de software................................................... 14

2.3.3.3

Requerimientos de Estándares. ............................................. 14

3

Planificación .............................................................................................. 14

4

Diagrama de casos de uso........................................................................ 16

5

Consideraciones grupales sobre la materia .............................................. 17

6

Apéndice I – Casos de uso ....................................................................... 21 6.1

Alta de usuarios .................................................................................. 21

6.2

Baja de Usuario................................................................................... 22

6.3

Modificación de Usuarios .................................................................... 23

6.4

Alta de Horas Disponibles ................................................................... 24

6.5

Baja de Horas Disponibles .................................................................. 25

6.6

Baja de Horas Disponibles .................................................................. 26

6.7

Realizar acto de elección de horas ..................................................... 27

6.8

Listado de docentes con más de 50 horas en el centro ...................... 29

6.9

Horas del Docente en última elección ................................................. 30

6.10

Docentes que tomaron horas en una misma materia ...................... 31

6.11

Listado de Materias.......................................................................... 32

INET – Profesorado de informática- Curso 2013

3

Ingeniería del software – 3° año – trabajo final

ESRE

2 2.1

Introducción.

2.1.1 Identificación.

Nombre del sistema: SI.E.HO. (Sistema de Elección de Horas) 2.1.2 Propósito del ESRE.

Este

documento

tiene

como

fin

documentar

la

Especificación

de

Requerimientos del SI.E.HO. En el presente se cuenta con una descripción del sistema mencionado, para el cual se especificarán sus alcances y limitaciones, así como también requerimientos funcionales y no funcionales.

2.1.3 Alcance del Producto.

El software a desarrollar permitirá la realización de actos de elección de horas en centros de formación docente. Para esto, previamente se deberán cargar al sistema las horas disponibles en el instituto. Además, se contará con un módulo de administración que permitirá administrar los usuarios que interactúan con el sistema (alta, baja y modificación). También realizará algunos reportes, listando determinados datos, los cuales se detallan en las funciones del sistema.

El sistema no permitirá realizar operaciones con docentes (alta, baja, modificación, listado) ni con materias (alta, baja, modificación, listado).

2.1.4 Glosario.

CFE: Consejo de Formación en Educación. Java: lenguaje de programación con el que se desarrollará el sistema. Eclipse: entorno de desarrollo en el cual se realizará el sistema. INET – Profesorado de informática- Curso 2013

4

Ingeniería del software – 3° año – trabajo final

Swing: biblioteca gráfica utilizada en Java para realizar la infterfaz gráfica con el usuario.

2.1.5 Referencias.

El sistema de desarrollará siguiendo la Normativa para los actos de elección de horas

en

los

organismos

del

CFE:

http://www.cfe.edu.uy/images/stories/pdfs/normativa/acta38_res12_2011.pdf

2.1.6 Generalidades del ESRE.

En el presente documento se desarrollará la perspectiva del producto, resumiendo los objetivos del sistema. También se indicarán las funciones del producto indicando la lista de funciones más importantes del sistema. Las características de los usuarios brindando información sobre los roles a implementar y sus principales privilegios. Las restricciones generales más importantes del sistema. Los supuestos de los que se parte para construir el sistema así como las dependencias con otros sistemas y ambientes. Luego de detallarán los requerimientos tanto funcionales, indicando cada uno de ellos con su descripción y los casos de uso que lo satisfacen, como de interfaz externa, interfaz con el usuario tanto como con otros sistemas y de comunicación. También se indican los requerimientos de hardware, software y estándares para el desarrollo.

2.2 Descripción General. 2.2.1 Perspectiva del Producto. En la actualidad los actos de elección de horas docentes en los institutos de formación docente se realizan con documentación en papel, utilizando simplemente tablas con la información de cada docente, las cuales deben ser INET – Profesorado de informática- Curso 2013

5

Ingeniería del software – 3° año – trabajo final

analizadas con cuidado en el momento de la asignación, tomando la correcta prioridad que hay entre los docentes en cada ronda; y teniendo como resultado un caótico trabajo que requiere de un minucioso trabajo por parte de operarios. Con el fin de organizar los actos de elección de horas, hacerlos fáciles de realizar, y agilizar el trabajo, se realizará el software SI.E.HO.. El propósito fundamental del programa, será el de organizar y simplificar el trabajo de los funcionarios administrativos de los Institutos de Formación Docente, en el momento de realizar el acto de elección de horas.

2.2.2 Funciones del Producto.



Alta de usuarios.



Baja de usuarios.



Modificación de usuarios.



Alta de horas disponibles.



Baja de horas disponibles.



Modificación de horas disponibles.



Asignación de horas disponibles a un docente en particular



Listado de docentes con más de 50 horas en el centro.



Horas que tomó un determinado docente en la última elección.



Listado de docentes que tomaron determinada materia.



Listado de materias dictadas en el instituto con la cantidad de docentes que la dictan (cantidad de docentes que tomaron esa materia en ese centro).

2.2.3 Características de los usuarios. El sistema SI.E.HO. está dirigido a los funcionarios administrativos de los institutos normales, encargados de los actos de elección de horas.

No contamos con información acerca de los conocimientos informáticos de los usuarios del sistema. Teniendo en cuenta que será personal administrativo, con

INET – Profesorado de informática- Curso 2013

6

Ingeniería del software – 3° año – trabajo final

nivel bajo o medio de interacción con sistemas informáticos, el software será intuitivo y amigable.

Los usuarios que tendrán interacción con el sistema serán categorizados por roles. Cada uno, tendrá un nivel de acceso diferente el cual determinará sus permisos. Por ejemplo, un usuario administrativo solamente podrá llevar a cabo una elección de horas, no pudiendo ingresar otros usuarios al sistema ni materias.

Los niveles de acceso al sistema serán: 



Administrador: o

Mantenimiento (Alta, baja y modificación) de usuarios del sistema.

o

Administración de Roles.

Intermedio: o



Manejo de horas (Alta, baja y modificación de horas disponibles).

Administrativo: o

Realizar acto de elección de horas.

o

Listado de docentes con más de 50 horas en el centro.

o

Horas que tomó un determinado docente en la última elección.

o

Listado de docentes que tomaron determinada materia.

o

Listado de materias dictadas en el instituto con la cantidad de docentes que la dictan (cantidad de docentes que tomaron esa materia en ese centro).

Los stakeholders identificados son los consejeros del CFE, cuerpo directivo de los diferentes centros de formación docente así como los administrativos encargados de llevar a cabo las elecciones de horas.

2.2.4 Restricciones Generales.

INET – Profesorado de informática- Curso 2013

7

Ingeniería del software – 3° año – trabajo final

Los datos de los docentes (nombre, cédula, expediente, puntaje, asignaturas para las cuales se encuentra habilitado, tipo de cargo, fecha de ingreso a la administración pública, fecha de ingreso a formación docente, y cantidad de horas tomadas en otros institutos) deben proveerse por el CFE. El software debe conectarse a Internet, a las bases de datos del CFE para obtener estos datos.

Los datos de las asignaturas (como nombre, código de asignatura, y área) deben ser obtenidas también de las bases de datos del CFE.

Los datos de las horas disponibles para cada grupo y cada asignatura, deberán estar disponibles previo al acto de elección de horas, por lo que los usuarios de tipo intermedio deben ingresarlos con los datos provistos por la dirección del instituto.

2.2.5 Supuestos y dependencias.

Partimos del supuesto de que en formación docente no existe una implementación de un sistema que permite llevar a cabo las elecciones de horas de forma sistemática y lo más automatizada posible, realizándose estos actos de forma totalmente manual (actualmente se realizan mediante varias planillas de donde se obtienen los docentes habilitados, las horas disponibles y se registran las elecciones). Por otro lado, entendemos beneficioso el desarrollo de un sistema con estas características para todos los interesados. Se presupone que el CFE tiene un registro (en una base de datos) de las materias existentes y los docentes con sus respectivos datos personales y habilitaciones. Estos registros deberán ser accesibles desde los centros de formación lo cual implica un acceso tanto a nivel lógico (nos deben proveer de la estructura en la que se presentan los datos), de seguridad (usuario mediante el cual se realizarán las consultas) y de conectividad (tanto de acceso como de filtrado en la red de CFE).

INET – Profesorado de informática- Curso 2013

8

Ingeniería del software – 3° año – trabajo final

2.3 Requerimientos 2.3.1 Requerimientos Funcionales.

2.3.1.1 Requerimiento Funcional 1: Alta de usuarios.

Descripción: El administrador del sistema podrá dar de alta a un usuario del sistema. Cuando se requiera dar de alta a un usuario, el administrador ingresará al sistema con su nombre de usuario y contraseña, una vez dentro podrá ingresar los datos correspondientes al nuevo usuario, asignándole un nombre de usuario nuevo y una contraseña alfanumérica de 8 caracteres.

Casos de uso: Caso de uso Alta de Usuario (ver Apéndice I)

2.3.1.2 Requerimiento Funcional 2: Baja de usuarios.

Descripción: El

administrador

del

sistema

podrá

eliminar

un

usuario

del

sistema. Cuando se requiera, el administrador ingresará al sistema con su nombre de usuario y contraseña, luego podrá seleccionar un usuario y eliminarlo de la base de datos, con lo cual ese usuario no podrá utilizar más el sistema.

Casos de uso: Caso de uso Baja de Usuario (ver Apéndice I)

2.3.1.3 Requerimiento Funcional 3: Modificación de usuarios.

Descripción: El administrador del sistema podrá modificar los datos de un usuario del sistema. Cuando así lo requiera, el administrador ingresará su nombre de INET – Profesorado de informática- Curso 2013

9

Ingeniería del software – 3° año – trabajo final

usuario y contraseña, una vez dentro podrá seleccionar un usuario y modificar los datos personales, incluyendo la contraseña

Casos de uso: Caso de uso Modificación de Usuarios (Ver Apéndice I)

2.3.1.4 Requerimiento Funcional 4: Alta de horas disponibles.

Descripción: El usuario luego de loggearse debidamente y de acuerdo al rol que cumpla en el sistema (si es usuario de tipo intermedio) podrá dar de alta las horas disponibles en un instituto, para una carrera y materia en particular.

Casos de uso: Caso de uso Alta de Horas Disponibles (Ver Apéndice I)

2.3.1.5 Requerimiento Funcional 5: Baja de horas disponibles.

Descripción. El usuario luego de loggearse debidamente y de acuerdo al rol que cumpla en el sistema (si es usuario de tipo intermedio) podrá dar de baja las horas disponibles en un instituto, para una carrera y materia en particular, para el caso de que esas horas ya no se encuentren disponibles

Casos de uso: Baja de horas disponibles. (Ver Apéndice I)

2.3.1.6 Requerimiento Funcional 6: Modificación de horas disponibles.

Descripción.

INET – Profesorado de informática- Curso 2013

10

Ingeniería del software – 3° año – trabajo final

El usuario luego de loggearse debidamente y de acuerdo al rol que cumpla en el sistema (si es usuario de tipo intermedio) podrá modificar las horas disponibles en un instituto (cantidad, grupo, materia, etc.)

Casos de uso: Modificación de horas disponibles. (Ver Apéndice I)

2.3.1.7 Requerimiento Funcional 7: Realizar acto de elección.

Descripción: El administrativo, una vez logueado en el sistema, podrá iniciar un acto de elección de horas. Se desplegarán las materias y deberá seleccionar la materia para la cual se desea realizar la designación. Hecho esto, se desplegará una lista con todas las horas para los cuales se requieren docentes de la asignatura seleccionada. El administrativo podrá seleccionar las horas a adjudicar, y posteriormente el software debe proveer una lista de todos los docentes (en orden en función del puntaje) cuyos datos coinciden con los requisitos para poder elegir horas en la ronda seleccionada. Una vez seleccionado el docente, el sistema debe dar de baja las horas como disponibles e ingresar al docente como a cargo de las horas seleccionadas en la materia correspondiente. Un docente tiene la capacidad de renunciar a las horas, y por lo tanto un administrativo puede, en la misma elección de horas, eliminar ese docente como profesor de las horas a las cuales renunció, dejando esas horas como disponibles. Terminada una ronda de elección de horas, si aún quedan horas disponibles para la materia/área seleccionada, el sistema debe pasar a la segunda ronda, se desplegará la lista de docentes cuyos datos coincidan con los requisitos para tal ronda. De terminarse todas las rondas para un área/materia, el sistema simplemente deja disponibles tales horas, para un próximo acto de elección de horas.

INET – Profesorado de informática- Curso 2013

11

Ingeniería del software – 3° año – trabajo final

Casos de uso: Realizar Acto de Elección de Horas (ver Apéndice I)

2.3.1.8 Requerimiento Funcional 8: Listado de docentes con más de 50 horas en el centro.

Descripción. Una vez loggeado en el sistema, un usuario cualquiera puede solicitar al sistema que imprima en pantalla un listado de aquellos docentes que poseen más de 50 horas en el mismo centro

Casos de uso: Listado de docentes con más de 50 horas en el centro.(Ver Apéndice I)

2.3.1.9 Requerimiento Funcional 9: Horas que tomó un determinado docente en la última elección.

Descripción. Un usuario debidamente identificado puede solicitar un reporte de la cantidad de horas tomadas por un docente en la última elección, que puede ser entregado como comprobante a quien lo solicite

Casos de uso: Listado de Horas que tomó un docente en la última elección. (Ver Apéndice I)

2.3.1.10 Requerimiento Funcional 10: Listado de docentes que tomaron determinada materia.

Descripción. Un usuario debidamente identificado puede solicitar un reporte de todos los docentes que tomaron horas de una materia determinada INET – Profesorado de informática- Curso 2013

12

Ingeniería del software – 3° año – trabajo final

Casos de uso: Listado de docentes que tomaron Horas en una misma Materia (Ver Apéndice I)

2.3.1.11 Requerimiento Funcional 11: Listado de materias dictadas en el instituto con la cantidad de docentes que la dictan.

Descripción. Un usuario debidamente identificado puede solicitar al sistema un listado de todas las materias con la cantidad de docentes que la dictan

Casos de uso: Caso de uso: Listado de Materias (Ver Apéndice I)

2.3.2 Requerimientos de Interfaz Externa. 2.3.2.1 Interfaces con el Usuario.

Para facilitar a los administrativos con el uso del sistema, éste tendrá una amigable interfaz gráfica desarrollada en Java mediante la biblioteca gráfica Swing.

2.3.2.2 Interfaces con otros Sistemas.

Si bien el sistema no interactuará directamente con otro sistema, sí hará uso de los datos almacenados por el sistema de gestión del CFE.

2.3.2.3 Interfaces de comunicación.

El sistema deberá conectarse con la base de datos del CFE para obtener la información de docentes y materias antes mencionados. INET – Profesorado de informática- Curso 2013

13

Ingeniería del software – 3° año – trabajo final

2.3.3 Restricciones de Diseño.

No se definieron restricciones de diseño.

2.3.3.1 Requerimientos de hardware.

El sistema deberá correr en cualquier equipo con una configuración de hardware estándar para la actualidad, es decir, deberá poderse utilizar en cualquier equipo con un procesador Pentium 4 a 2.0 GHz o mejor, con 1GB de RAM, 400 MB de espacio libre en disco, y una conexión a Internet (para acceder a los datos de los docentes de los servidores del CFE).

2.3.3.2 Requerimientos de software.

El software deberá ser desarrollado en Java. Se utilizará la interfaz de desarrollo Eclipse. Los equipos en los cuales se ejecute el sistema, deberán tener Java instalado para poder correr el software.

2.3.3.3 Requerimientos de Estándares.

No se han especificado en este momento

3

Planificación

INET – Profesorado de informática- Curso 2013

14

Ingeniería del software – 3° año – trabajo final

Ilustración 1 - Tareas

Ilustración 2 - Gantt

INET – Profesorado de informática- Curso 2013

15

Ingeniería del software – 3° año – trabajo final

4

Diagrama de casos de uso

Ilustración 3 - Diagrama de casos de uso

INET – Profesorado de informática- Curso 2013

16

Ingeniería del software – 3° año – trabajo final

5

Consideraciones grupales sobre la materia El propuesto trabajo obligatorio de Ingeniería de Software ha sido de utilidad

para lograr comprender desde la práctica muchos de los conceptos trabajados en clase, en particular lo referente a Ingeniería de Requerimientos. Se podría decir que debido a razones que no tienen que ver con la propuesta, la misma no se ha podido aprovechar al máximo como se hubiese esperado, ya que nos encontramos en un mes en los cuales los tiempos de trabajo son muy limitados, y como estudiantes debemos atender a otras propuestas obligatorias, además de parciales. Lejos de esto ser una crítica a la propuesta en sí, es una realidad que pudo llegar a impedir una dedicación más minuciosa y esmerada con respecto al trabajo, y por consiguiente, un mayor disfrute del mismo. No obstante, se ha logrado llevar adelante satisfactoriamente, y como se ha planteado antes, es una adecuada práctica para entender mejor la temática de Ingeniería de Requerimientos, además de ser un medio en el cual se pueden aplicar los conceptos teóricos de la asignatura. Ha sido fructífera la propuesta para practicar las siguientes cualidades que debe tener un informático: 

Habilidad para el trabajo en equipo: Es esencial en todo proyecto de desarrollo de software se trabaja en grupo, todo emprendimiento de desarrollo requiere de programadores, analistas, encargados del soporte técnico, supervisores, testers, etc. En este caso el proyecto sólo comprende la fase de análisis, no obstante, el análisis es una de las fases más importantes (o la más importante) en todo proyecto de desarrollo, por lo cual el trabajo en equipo también es esencial.



Creatividad: Desde el momento que se piensa en un nombre para el sistema, hasta el momento en el cual se piensa cada una de las funcionalidades que debe tener, el alcance y las características que poseerá el software, siempre se hace necesaria la creatividad. El trabajo en

un

facultad.

proyecto

de

esta

índole

ejercita

precisamente

esta

Puede que el diseño de algoritmos requiere de aún más

INET – Profesorado de informática- Curso 2013

17

Ingeniería del software – 3° año – trabajo final

creatividad que simplemente analizar un software. Es decir, está claro que especificar el “¿CÓMO?” se va a resolver un problema requiere de más claridad “¿QUÉ?” se va a hacer. Aún así, el hecho de pensar en qué tipo de software se va a realizar, requiere de creatividad para pensar en un mejor proyecto posible. 

Comprender la importancia del análisis: Mucha gente ajena a la informática ni siquiera tiene una idea de lo que realmente implica el estudio y trabajo en ciencias de la computación (de hecho existe un enorme debate al respecto que ya hemos tenido en asignaturas como didáctica de la informática). No obstante, aún en personas con conocimientos de computación, existe la creencia de que la principal tarea en el desarrollo de un software, es la programación. De hecho, suele confundirse el término “desarrollador” con “programador”. Una vez que nos dedicamos a realizar actividades de análisis, comprendemos el trabajo que requieren estas tareas, siendo que de hecho, debemos tener en cuenta que para que exista una correcta implementación del software, una buena programación, se requiere de un buen diseño arquitectónico del mismo.

Del mismo modo, para que exista un buen diseño, se requiere de un buen análisis. Por una cuestión lógica, debemos conocer claramente cuáles son los requerimientos, el alcance del software que se quiere realizar, y la descripción detallada del problema en sí, para tener una idea de qué tipo de solución se requiere para el mismo. Por lo esbozado anteriormente, se comprende la importancia del análisis, el trabajo en esta fase del desarrollo, como se propone en el obligatorio, consolida el conocimiento en este aspecto. 

Abstracción: Especificar los requerimientos para un proyecto de software, hace necesaria la capacidad de traer de la realidad un problema para convertirlo en un trabajo informático, es decir, abstraer la dimensión del problema, pensar en una posible solución y especificar lo que se requiere para que esa solución se cumpla. Se debe pensar en los requisitos que tendrá el programa, y en el público para el cual va

INET – Profesorado de informática- Curso 2013

18

Ingeniería del software – 3° año – trabajo final

dirigido, se debe no solo abstraer el problema de la realidad, y pensar en la solución, sino pensar también en las restricciones de esa solución, en las cosas que el programa debería tener o hacer para que no sólo consista en la solución que satisfaga las necesidades del negocio, , sino que sea práctico y cómodo para que el usuario final pueda utilizarlo.

En líneas generales, las asignaturas técnicas del Profesorado de Informática, así como probablemente sea en todas las carreras vinculadas a la computación, están fuertemente centradas en la programación, el diseño e implementación de bases de datos relacionales, en la lógica, la algoritmia y el pensamiento computacional. Todo esto es muy positivo, pero hay un detalle que en nuestra carrera vemos sólo en Ingeniería de Software, y es, precisamente, el aprendizaje del Análisis de un software. De establecer los requerimientos de un software, de hecho, comprender las etapas que lleva un proyecto de desarrollo de software, es algo que se adquiere únicamente en ingeniería. Por lo cual, es esencial que exista una instancia práctica, una instancia en la cual nos enfrentemos a una realidad, y apliquemos lo aprendido en tal asignatura, por todo ello, es importante la existencia de este tipo de propuestas.

Un factor que no se ha mencionado tampoco, sobre el trabajo, es el aspecto motivacional, debemos tener en cuenta, que Ingeniería es una asignatura con un muy fuerte contenido teórico, aprobar las instancias de prueba involucra un esmerado estudio, repasando una enorme cantidad de conceptos, no obstante, esta tarea puede hacerse tediosa si no existe un factor de motivación, y de fundamentación, un factor que indique para qué es necesario el aprendizaje de los conceptos teóricos, creemos que el hecho de enfrentarse a un problema real, y diseñar un ESRE, y la exigencia de que el mismo sea de la misma manera que se haría en un proyecto real, motiva a aprender la teoría, pues, se le encuentra una utilidad práctica. Además por supuesto, de ser una herramienta de fundamentación de la asignatura, ya que uno de los pilares de la misma es la Ingeniería de Requerimientos.

INET – Profesorado de informática- Curso 2013

19

Ingeniería del software – 3° año – trabajo final

Respecto a los temas centrales vistos en clase que se han vinculado estrechamente con la propuesta del obligatorio, se pueden enumerar, como ya se ha mencionado, la Ingeniería de Requerimientos, que involucra básicamente todo el trabajo, pero además pueden verse reflejados el estudio de temáticas como:

1. Propósito de la Ingeniería de Software 2. Ciclo de vida del software (si bien sólo se trabaja en fase de análisis) 3. Planificación. 4. Estimación de tiempo y costos

INET – Profesorado de informática- Curso 2013

20

Ingeniería del software – 3° año – trabajo final

6

Apéndice I – Casos de uso

6.1 Alta de usuarios Caso de uso: Alta de Usuario Precondición Usuario Administrador debe estar loggeado en el sistema Curso Básico Usuario Sistema 1. Seleccionar opción Alta de Usuario 2. Mostrar pantalla Alta_Usuario (interfaz gráfica) 3. Llenar formulario con datos del nuevo usuario NombreUsuario TipoUsuario Contraseña Tipo y número de documento Nombre, Apellido(s) Dirección Código Postal Departamento E-mail Teléfono: Fax 4. Guardar datos del formulario en ArchivoUsuarios Cursos Alternativos Usuario ya existe (por nombreUsuario o por tipo y número de documento) Usuario Sistema 4. Mostrar Aviso en pantalla de que ese Usuario ya existe y no permitir guardarlo Contraseña No Válida Usuario Sistema 4. Mostrar Aviso en pantalla de que la contraseña no es válida y no permitir guardarlo. Si se oprime el botón Aceptar, volver a la pantalla Alta_Usuario Aclaraciones Los Nombres de usuario se compondrán de la primera letra del primer nombre seguido del apellido, ej: jperez Validación de la contraseña: debe contener al menos 8 caracteres, entre ellos al menos 1 mayúscula, 1 minúscula y 1 número

INET – Profesorado de informática- Curso 2013

21

Ingeniería del software – 3° año – trabajo final

6.2 Baja de Usuario Caso de uso: Baja de Usuario Precondición Usuario Administrador debe estar loggeado en el sistema Curso Básico Usuario Sistema 1. Seleccionar opción Baja de Usuario 2. Mostrar pantalla Baja_Usuario

3. Llenar una caja de texto con el nombre de usuario que se desea eliminar del sistema

4. Mostrar datos del Usuario que se quiere eliminar y Aviso en pantalla pidiendo confirmación de la acción

5. Elegir entre Aceptar/Cancelar

6. Si Aceptar: Eliminar de la base de datos del sistema al usuario elegido Cursos Alternativos

Usuario ingresado no existe Usuario

Sistema 4. Mostrar Aviso en pantalla de que ese Usuario no existe y volver a la pantalla Baja_Usuario Aclaraciones

INET – Profesorado de informática- Curso 2013

22

Ingeniería del software – 3° año – trabajo final

6.3 Modificación de Usuarios Caso de uso: Modificación de Usuario Precondición Usuario Administrador debe estar loggeado en el sistema Curso Básico Usuario Sistema 1. Seleccionar opción Modificación de Usuario 2. Mostrar pantalla Modificacion_Usuario (interfaz gráfica) 3. Llenar caja de texto con el nombre de usuario que se quiere modificar

5. Modificar aquellos datos que se quiera modificar y hacer click en Aceptar

4. Mostrar en pantalla los datos del usuario que coincide con el nombre de usuario ingresado, en cajas de texto que permitan la modificación (con excepción del nombre de usuario

6. Guardar en ArchivoUsuarios usuario reemplazando datos anteriores Cursos Alternativos Usuario ingresado no existe Usuario

Sistema 4. Mostrar Aviso en pantalla de que ese Usuario no existe y volver a la pantalla Modificacion_Usuario

Contraseña No Válida Usuario

Sistema 4. Mostrar Aviso en pantalla de que la contraseña no es válida y no permitir guardarlo. Si se oprime el botón Aceptar, volver a la pantalla Modificacion_Usuario Aclaraciones Los Nombres de Usuario en sí mismos no se pueden cambiar, pues forman parte de la clave primaria, el resto de los datos se pueden modificar

INET – Profesorado de informática- Curso 2013

23

Ingeniería del software – 3° año – trabajo final

6.4 Alta de Horas Disponibles Caso de uso: Alta de Horas Disponibles Precondición Usuario Intermedio debe estar loggeado en el sistema Curso Básico Usuario Sistema 1. Seleccionar opción Alta de Horas Disponibles 2. Mostrar pantalla Alta_Horas (interfaz gráfica) 3. Llenar en las cajas de texto: Año Carrera Materia Turno Grupo Cantidad de Horas 4. Si se hace click en Aceptar se guardan todos los datos en un ArchivoHoras Cursos Alternativos La cantidad de horas no se corresponde con la cantidad asignada a la materia. Usuario Sistema 4. Mostrar aviso en pantalla mostrando el error y pidiendo que se corrija. Cuando se hace click en Aceptar se vuelve a la pantalla Alta_Horas Aclaraciones

INET – Profesorado de informática- Curso 2013

24

Ingeniería del software – 3° año – trabajo final

6.5 Baja de Horas Disponibles Caso de uso: Baja de Horas Disponibles Precondición Usuario Intermedio debe estar loggeado en el sistema Curso Básico Usuario Sistema 1. Seleccionar opción Baja de Horas Disponibles 2. Mostrar pantallaBaja_Horas (interfaz gráfica) 3. Llenar en la caja de texto la identificación de las horas (Año, Carrera, Materia, turno, grupo) 4. Si se hace click en Aceptar se eliminan esas horas del ArchivoHoras Cursos Alternativos Las horas se encuentran asignadas a un docente Usuario Sistema 4. Mostrar aviso en pantalla mostrando el error y pidiendo que se corrija. Cuando se hace click en Aceptar se vuelve a la pantalla Baja_Horas. Aclaraciones No se podrán eliminar horas si las mismas se hallan asignadas a un docente, debiendo previamente des-asignarlas

INET – Profesorado de informática- Curso 2013

25

Ingeniería del software – 3° año – trabajo final

6.6

Baja de Horas Disponibles

Caso de uso: Modificación de Horas Disponibles Precondición Usuario Intermedio debe estar loggeado en el sistema Curso Básico Usuario Sistema 1. Seleccionar opción Modificación de Horas Disponibles 2. Mostrar pantalla Modificacion_Horas (interfaz gráfica) 3. Llenar en la caja de texto la identificación de las horas (Año, Carrera, Materia, turno, grupo y cantidad 4. Si se hace click en Aceptar se guardan las modificaciones en elArchivoHoras Cursos Alternativos Las horas se encuentran asignadas a un docente Usuario Sistema 4. Mostrar aviso en pantalla mostrando el error y pidiendo que se corrija. Cuando se hace click en Aceptar se vuelve a la pantalla Modificacion_Horas. Aclaraciones No se podrán modificar horas si las mismas se hallan asignadas a un docente, debiendo previamente des-asignarlas

INET – Profesorado de informática- Curso 2013

26

Ingeniería del software – 3° año – trabajo final

6.7

Realizar acto de elección de horas

Caso de uso: Realizar acto de elección de horas Precondición Usuario Administrativo debe estar loggeado en el sistema Curso Básico Usuario Sistema 1. Seleccionar opción Realizar acto de elección de horas 2. Mostrar pantalla Realizar_acto_de_elección_de_horas (interfaz gráfica). Inicia el acto con la primera ronda. Se despliegan las materias existentes. 3. Seleccionar la materia de la cual se elegirán horas 4. Mostrar en pantalla las horas disponibles. 5. Seleccionar las horas a designar. 6. Mostrar en pantalla los docentes habilitados a tomar esas horas (docentes habilitados, que aun no llegaron al tope de horas tanto del total como de la ronda) ordenadas según 7. Seleccionar el docente que elige las puntaje. horas.

11. Seleccionar la materia de la cual se elegirán horas 13. Seleccionar las horas a designar.

8. Se guardan las horas adjudicadas al docente seleccionado retirando su disponibilidad. Se agregan las horas (con sus correspondientes horas de departamento) a las horas totales del docente. 9. Si el docente seleccionado aun puede tomar horas en esa ronda, se vuelve al punto 5. Si no, si quedan docentes disponibles para tomar horas en esta ronda, vuelve al punto 2. En caso contrario, se pasa a la segunda ronda. Si se desea renunciar horas, se hace click en “Renunciar”, pasando al flujo alternativo. 10. Se despliegan las materias existentes. 12. Mostrar en pantalla las horas disponibles.

INET – Profesorado de informática- Curso 2013

27

Ingeniería del software – 3° año – trabajo final

15. Seleccionar el docente que elige las horas.

14. Mostrar en pantalla los docentes habilitados a tomar esas horas (docentes habilitados, que aun no llegaron al tope de horas tanto del total como de la ronda) ordenadas según puntaje.

16. Se guardan las horas adjudicadas al docente seleccionado retirando su disponibilidad. Se agregan las horas (con sus correspondientes horas de departamento) a las horas totales del docente. 17. Si el docente seleccionado aun puede tomar horas en esa ronda, se vuelve al punto 13. Si quedan docentes disponibles para tomar horas en esta ronda vuelve al punto 10. Cursos Alternativos Renunciar Usuario 2. Seleccionar docente el cual quiere renunciar horas.

Sistema 1. Muestra listado docentes con horas asignadas en la designación corriente. 3. Se listan las horas asignadas al docente seleccionado.

4. Seleccionar las horas que desea renunciar.

5. Se pasan las horas seleccionadas como disponibles. Retorna al flujo normal. Aclaraciones

INET – Profesorado de informática- Curso 2013

28

Ingeniería del software – 3° año – trabajo final

6.8 Listado de docentes con más de 50 horas en el centro Caso de uso: Listado de Docentes que tienen más de 50 horas en el centro Precondición Usuario debe estar loggeado en el sistema Usuario debió haber elegido la opción Listados Curso Básico Usuario Sistema 1. Seleccionar la opción Docentes con más de 50 horas en el Instituto 2. Mostrar en pantalla el listado solicitado con dos botones al final: Aceptar/Imprimir 3a. Si Aceptar, volver a la pantalla Listados 3b. Si Imprimir, se imprime el listado en la impresora predeterminada Cursos Alternativos No hay docentes que cumplan con ese requisito Usuario Sistema 4. Mostrar aviso en pantalla diciendo que no hay docentes con más de 50 horas en el instituto y un botón Aceptar. Si se hace click en Aceptar se vuelve a la pantalla Listados

INET – Profesorado de informática- Curso 2013

29

Ingeniería del software – 3° año – trabajo final

6.9 Horas del Docente en última elección Caso de uso: Listado de Horas que tomó un docente en la última elección Precondición Usuario debe estar loggeado en el sistema Usuario debió haber elegido la opción Listados Curso Básico Usuario Sistema 1. Seleccionar la opción Horas que tomó el docente en la última Elección 2. Mostrar la pantalla Hora_Docente 3. Llenar una caja de texto con el número de cédula del docente 4. Mostrar un listado con la cantidad de horas y demás detalles (Carreras, materias, turnos, etc.) y dos botones debajo: Aceptar // Imprimir 5a. Si Aceptar, volver a la pantalla Listados 5b. Si Imprimir, se imprime el listado en la impresora predeterminada Cursos Alternativos Docente ingresado no existe Usuario Sistema 4. Mostrar Aviso en pantalla de que ese Docente no existe y volver a la pantalla Hora_Docente

INET – Profesorado de informática- Curso 2013

30

Ingeniería del software – 3° año – trabajo final

6.10 Docentes que tomaron horas en una misma materia Caso de uso: Listado de docentes que poseen horas en una misma Materia Precondición Usuario debe estar loggeado en el sistema Usuario debió haber elegido la opción Listados Curso Básico Usuario Sistema 1. Seleccionar la opción Docentes de una materia 2. Mostrar la pantalla 3. Llenar unas cajas de texto con el Docentes_Materia nombre de la materia, año, carrera 4. Mostrar un listado con la cantidad de horas y demás detalles (Carreras, materias, turnos, etc.) y nombres de los docentes a cada lado, y dos botones debajo: Aceptar // Imprimir 5a. Si Aceptar, volver a la pantalla Listados 5b. Si Imprimir, se imprime el listado en la impresora predeterminada Cursos Alternativos Materiaingresada no existe Usuario

Sistema 4. Mostrar Aviso en pantalla de que esaMateria no existe y volver a la pantalla Hora_Docente

INET – Profesorado de informática- Curso 2013

31

Ingeniería del software – 3° año – trabajo final

6.11 Listado de Materias Caso de uso: Listado de Materias Precondición Usuario debe estar loggeado en el sistema Usuario debió haber elegido la opción Listados Curso Básico Usuario Sistema 1. Seleccionar la opción Listado de Todas las Materias 2. Mostrar en pantalla el listado de todas las materias que se dictan en el curso, identificadas y separadas por carreras, con la cantidad de docentes que la dictan en cada caso y dos botones al final, Aceptar // Imprimir 5a. Si Aceptar, volver a la pantalla Listados 5b. Si Imprimir, se imprime el listado en la impresora predeterminada

INET – Profesorado de informática- Curso 2013

32