[Php-avanzado] Última versión de la SRS

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Sab Dic 5 02:55:45 ARST 2009


Hola Lucas,

El vie, 04-12-2009 a las 20:21 -0300, Lucas Nastri escribió:
> Leo, te mandó la nueva versión de la SRS :P . Espero estar mejorando!.

	Efectivamente, esta versión es mejor que la anterior, pero no tan buena
como la siguiente ;-)


	Te respondo intercalado:


> documento de texto sencillo adjunto (especificación de
> requerimientos(2).txt)
> Introducción:
> Éste sistema se lleva a cabo para informatizar las oficinas
> del registro nacional de las personas. Mediante éste sistema
> es posible realizar cambios de comicilio y nuevos ejemplares
> de documentos a los ciudadanos que lo requieran.
> 
> 
> Diccionario:
> Empleado: Persona que interactúa con alguno de los subsistemas
> disponibles.
> 
> 
> Ciudadano: Persona que concurre a la oficina para realizar un
> trámite.
> 
> 
> Trámite:
>    *Tipos disponibles: Nuevo ejemplar, Cambio de domicilio.
>    
>    *Código: número (asignado al tipo de trámite) que determina
>     el precio a abonar por realizar el mismo.
>      - Códigos disponibles por el sistema:
>      - 52 para Nuevo ejemplar con un costo de $25.
>      - 40 para un cambio de domicilio con un costo de $8.
>      - 52 40 para Nuevo ejemplar con cambio de domicilio con
>      un costo de $33.
>    
>    *Estados disponibles: Finalizado, dudoso.
>      - El estado de un trámite solo se utiliza para saber si el
>      ciudadano terminó el trámite correctamente.
> 
> 
> Mesa de entrada: Subsistema mediante el cuál se inicia el trámite
> ingresando datos del ciudadano.

	La palabra "subsistema" acá está de más, porque recién el el diseño se
determinará qué subsistemas tiene el sistema, si es que los tiene. Dicho
así, técnicamente hablando, parece una restricción de diseño.

	Podés definir la "mesa de entrada" sin decir que es un subsistema o una
pantalla? La idea del diccionario es aclarar qué es, y no cómo se ve ni
cómo funciona (el cómo funciona es justamente el requerimiento
funcional)

> Tomar trámite: Subsistema que continua el trámite que se inició
> en la mesa de entrada para generar un formulario con los datos del
> ciudadano.

Idem anterior!

> Consulta de boletas: Subsistema que visualiza los datos del
> trámite de un ciudadano.

Idem anterior!
No sé si esto necesita una entrada en el diccionario. Lo que sí necesita
es "boleta".

> Proceso de cierre: Subsistema que recuenta los trámites
> existentes según el tipo de trámite.

Idem anterior!

> Requerimientos funcionales del sistema:
> 
> 1. El sistema debe dar de alta y modificar ciudadanos.

	Ok. Esto significa que no hay como borrar un Ciudadano del sistema...
curioso...


>    1.1. Los atributos del ciudadano que tendrá en cuenta el sistema
>    serán lo siguientes:
> 	*Número de documento.
> 	*Apellido.	
> 	*Nombre.
> 	*Fecha de nacimiento.
> 	*Localidad de nacimiento.
> 	*Sexo.
> 	*Teléfono.
> 	*Nivel de estudios cursados por el ciudadano.
> 	*Ocupación del ciudadano.

	En estos atributos, hacés referencia a las Localidades y al Nivel de
Estudios y a las Ocupaciones, pero como entidades del sistema, debés
especificarlas antes que al Ciudadano, para clarificar la lectura de la
SRS.

> 
> 2. El sistema debe permitir dar de alta y modificar trámites.

	Ok. Tampoco vas a permitir que se borren Trámites...

>    2.1. Los atributos del trámite que tendrá en cuenta el sistema
>    serán lo siguientes:
> 	*Número de boleta.
> 	*Los atributos del ciudadano mencionados en 1.2.
> 	*Tipo de trámite a realizar.
> 	*Código del trámite.
> 	*Estado del trámite.
> 	*Empleado que comenzó el trámite en mesa de entrada.
> 	*Domicilio actual.
> 	*Domicilio nuevo (en caso de cambiar el domicilio).

	Acá hacés referencia a los Códigos del Trámite, a los Estados y a los
Empleados. Por lo mismo que en 1), debés especificarlos antes...

> 3. El sistema debe comenzar un trámite mediante la mesa
> de entrada.
>    3.1. Se cargan los siguientes datos del ciudadano:
> 	*Número de dni.
> 	*Apellido.
> 	*Nombre.
> 	*Fecha de nacimiento.
> 	*Telefono.
> 
>    3.2. Se cargan los siguientes datos correspondientes al
>    trámite:
> 	*Tipo de tramite.
> 	*Código de tramite.
> 	*Número de boleta.
> 	*Nombre del empleado que comenzó el trámite.
> 
> 
> 4. Al momento de tomar el trámite, el sistema debe verificar
> si existe un trámite con el número de boleta ingresado. En caso
> afirmativo:
>    4.1.El subsistema toma de trámites tendrá en cuenta los
>    siguientes datos:
> 	*Domicilio actual del ciudadano.
> 	*Domcilio nuevo en caso de cambiarlo.
> 	*Nivel de estudios cursados por el ciudadano.
> 	*Ocupación del ciudadano.
> 
>    4.2. Al finalizar el trámite el sistema debe generar un
>    formulario con los datos del trámite y del ciudadano. 

	Esto está muy bien especificado, excepto la mención al "subsistema".

> 5. El sistema debe consultar datos sobre el trámite de un
> ciudadano por medio del subsistema consulta de boletas mediante
> el ingreso del número de documento y sexo.
> 
> 
> 6. El sistema debe realizar el proceso de cierre al final del
> día.
> 
> 
> 7. El sistema debe cambiar el estado de un trámite dudoso.
> Cuando un trámite es inciado su estado se incia en dudoso y éste
> se cambia a finalizado solo cuando se haya concluido.
> 
> 
> 8. El sistema debe tener en cuenta, para el proceso del punto 6,
> los trámites con estado finalizado.
> 
> 
> 9. El sistema debe mostrar un historial de trámites que ha realizado
> un ciudadano.
> 
> 
> 10. El sistema debe poder enviar por mail el resultado del proceso de
> cierre.
> 
> 
> 11. El sistema debe mostrar información de su versión.

	Está mucho mejor Lucas.
	Te faltan especificar varias cosas importantes, sin las cuales el
sistema no funciona, como las Localidades, los Tipos de Trámites, etc.

	Seguimos!
	Dale que falta poco!!!

	Espero que el proceso de escribir la SRS te esté sirviendo. Me da la
sensación de que estás descubriendo cosas que el sistema tiene que
hacer, en las que no habías pensado en detalle al principio de esta
idea.

-- 

Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key



Más información sobre la lista de distribución Php-avanzado