[Php-avanzado] Para Leo

Lucas Nastri dex87.mdq en gmail.com
Mar Dic 1 23:16:49 ARST 2009


Leo, comencé a reformular la srs y me encontré con algunas cosas que no me
quedan muy claras sobre algunas observaciones que hiciste :S . Yo había
puesto ...

"El sistema debe gestionar usuarios". Ok, me dí cuenta que estaba
confundiendo el termino usuario con empleado, porque después de todo un
empleado va a utilizar el sistema, es un usuario del sistema ... Pero ok,
voy a sustituir el termino usuario por empleado.

Y otra pregunta, ahora sobre las tablas ... Si bien me dijiste que no tiene
sentido analizar las tablas si la srs no está lista todavía me comentaste
que te parecía que faltaba una relación de los ciudadanos con los estudios y
la ocupación ... La pregunta es la siguiente:

A mi en realidad no me interesa guardar la información de los estudios y la
ocupación de la persona hasta que no se haya concluído el trámite ... Por
eso no puse un id de los estudios y la ocupación en la tabla de ciudadanos y
si en la tabla que uso para Toma de trámites. No voy a pedir éstos datos
hasta que llegue a Toma de trámites y los datos del ciudadano los grabo
cuando inicio el trámite en mesa de entrada, por lo tanto hasta ese momento
no conozco los estudios y la ocupación que tiene. Pero no estoy seguro si es
correcto lo que te digo y me gustaría que me dijeras si está bien que lo
haga así ...

Lo de enviar el mail me pareció que estaba bueno implementarlo, pero es
verdad queda medio colgado ... pensaba, que se podía enviar en mail por
algun error en el sistema o algo así, pero no sé si está bien hacerlo.

Muchas gracias Leo, un abrazo.
Lucas.

El 30 de noviembre de 2009 23:52, Leonardo Tadei - Pegasus Tech Supply <
leonardot en pegasusnet.com.ar> escribió:

> Hola Lucas!
>
> El lun, 30-11-2009 a las 16:30 -0300, Lucas Nastri escribió:
> > Leo, te mando la especificación de la tesis para saber si está bien
> > así.
>
>         Te hago comentarios intercalados.
>
> > Y una pregunta, también tengo que mandarte los dibujos de las ventanas
> > del sistema?. Gracias.
>
>         No, ya que solo les pido los requerimientos funcionales, y las
> pantallas son "no funcionales", pero está muy bueno que los hayas hecho:
> hace que tu proyecto se escriba más fácil y rápido.
>
> > Nos vemos el jueves.
> > Lucas.
> > documento de texto sencillo adjunto (especificación de
> > requerimientos.txt)
>
>        Clarifica mucho ponerles títulos para saber de qué se habla, como
> pusiste para el Diccionario y los Requerimientos Funcionales. El párrafo
> que sigue podría titularse "Introducción" o "Requerimientos
> empresariales"
>
> > - Este sistema se lleva a cabo para informatizar las oficinas
> > del registro nacional de las personas. Mediante éste sistema
> > se pueden realizar los trámites necesarios que requieran los
> > ciudadanos.
>
>        Ok.
>
> > Diccionario:
> > Comenzar el trámite con la mesa de entrada: Consiste
> > en cargar los datos personales del ciudadano (número
> > de dni, apellido, nombre, fecha de nacimiento, telefono,
> > tipo de tramite, codigo de tramite, número de boleta).
>
>        Parece el requerimiento funcional de un ABM de trámites...
>        No estás mezclando el qué es, que sí va a acá, con el qué hace, que
> es
> el req. funcional?
>
> > El sistema además de comenzar con el trámite también
> > guarda los datos de la persona en un tabla ciudadanos
> > para dejar registrada al ciudadano que realizó un trámite.
>
>        Decir que "guarda en una tabla" es decir cómo se hace, y en la SRS
> solo
> ha que hablar de qué se hace. No creo que valga la pena indicar que se
> guarda y que no, ya que eso se desprende de los requerimientos
> funcionales.
>
> > Tomar trámite: Carga datos adicionales al ciudadano y
> > genera un formulario con los datos. La toma del trámite se
> > realiza mediante el ingreso del número de boleta que se le
> > asignó en mesa de entrada. Solo se podrá cargar los datos si
> > el número de boleta exista.
>
>        Ok.
>        La segunda oración es en rigor un caso de uso, y no una definición
> del
> diccionario.
>
> > Consulta de boletas: Mediante el número de documento del
> > ciudadano se exhiben los datos de su trámite (número de
> > boleta, que usuario lo registró, y datos personales de la
> > persona).
>
>        Ok.
>
> > Proceso de cierre: Consiste en un recuento de los trámites
> > existentes (trámites con estado finalizado) según el tipo
> > de trámite y genera una tabla con la cantidad de trámites.
>
>        Ok. La parte de que "genera una tabla..." no es del diccionario.
>
>
> > Requerimientos funcionales del sistema:
> >
> > 1. El sistema debe gestionar usuarios.
>
>        No. Los usuarios _no_ son un requerimiento funcional.
>        Si querés ponerlos, pasalos a una sección de Requerimientos No
> Funcionales".
>        Además, "usuario" es un término tan amplio que no dice nada!!!
>
> > 2. El sistema debe diferenciar entre usuarios por medio
> > de una categoría (empleado o jefe).
>
>        No. Nada relativo a los usuarios es funcional.
>
> > 3. El sistema debe asignar distintos permisos a acceso a
> > funciones mediante la diferencia hecha en 2.
>
>        No. Nada que tenga que ver con accesos es funcional.
>        Tu sistema va a tener que realizar las funciones que indiques, y vos
> vas a tener que escribirlas, independientemente del tipo de "usuario"
> que ingresa.
>
> > 4. El sistema debe comenzar un trámite mediante la mesa
> > de entrada.
>
>        Bien... en el diccionario definís "comenzar un trámite mediante la
> mesa
> de entrada" pero la verdad es que si no es la "gestión de trámites" que
> parecés indicar en el diccionario, esto no me dice nada.
>        Es como que definís en el diccionario "tomar trámite" y tu
> requerimiento funcional es "el sistema debe tomar trámite"...
>
> > 5. El sistema debe verificar si existe un trámite con el
> > número de boleta ingresado. En caso afirmativo debe poder
> > tomar el trámite.
>
>        Está bien, pero cuando reformules el 4, creo que será simple
> integrarlo
> como una restricción ahí mismo.
>        Los trámites no pueden borrarse? Qué pasa si alguien los carga mal?
>
> > 6. El sistema debe consultar datos sobre el trámite de un
> > ciudadano mediante el sub sistema consulta de boletas.
>
>        Ok... pero a todo esto, no hace falta un "el sistema debe gestionar
> ciudadanos" ?
>
> > 7. El sistema debe realizar el proceso de cierre al final del
> > día.
>
>        Ok. Con esto y la entrada del diccionario explicando qué es el
> cierre
> al final del día está clarísimo.
>
> > 8. El sistema debe cambiar el estado de un trámite, finalizado
> > o dudoso. El sistema solo tendrá en cuenta para el proceso del
> > punto 7 los trámites con estado finalizado.
>
>        O sea que los trámites finalizados pueden pasar a dudoso? No te
> entiendo :(
>        Poné los estados posibles, y de qué estado a qué estado vale pasar.
>
> > 9. El sistema debe enviar mails al desarrollador.
>
>        Ok... pero sin poner qué va en los mails, a esto le falta algo.
>
> > 10. El sistema debe mostrar información de su versión.
>
>        Ok.
>
>
> > Tablas para la base de datos del sistema:
>
>        No tiene sentido analizar las tablas sin tener terminada la SRS,
> pero
> da la sensación de que falta una relación de los Ciudadanos con la
> Ocupación y los Estudios...
>
>        Ahora, para no perder velocidad, reescribila con las indicaciones
> que
> te doy y reenviámela ASAP!!!
>
>        Nos vemos!!!
>
>
>
> > Usuarios:
> > id            int             (PK)
> > dni           varchar(9)      (ÚNICO)
> > ape           varchar(30)
> > nom           varchar(30)
> > fnac          date
> > nick          varchar(20)
> > pass          varchar(20)
> > mesa          varchar(2)
> > toma          varchar(2)
> > cierre                varchar(2)
> > boleta                varchar(2)
> > id_cat                int
> >
> >
> > Categorias:
> > id            int             (PK)
> > puesto                varchar(15)
> >
> >
> > Provincias:
> > id            int
> > nombre                varchar(20)
> >
> >
> > Partidos:
> > id            int
> > nombre                varchar(20)
> > id_prov               int
> >
> >
> > Localidades:
> > id            int
> > nombre                varchar(20)
> > id_part               int
> >
> >
> > Estudios:
> > id            int
> > nivel         varchar(20)
> > titulo                varchar(20)
> >
> >
> > Ocupaciones:
> > id            int
> > nombre                varchar(20)
> >
> >
> > Ciudadanos:
> > id            int             (PK)
> > dni           varchar(9)      (ÚNICO)
> > ape           varchar(30)
> > nom           varchar(30)
> > fnac          date
> > sexo          char
> > telefono      varchar(18)
> >
> >
> > Tipo_tramite:
> > id            int             (PK)
> > tipo          varchar(15)
> >
> >
> > Codigo_tramite:
> > id            int             (PK)
> > codigo                char
> >
> >
> > Tramites_mesa:
> > id            int             (PK)
> > id_ciudadano  int
> > num_boleta    varchar(18)
> > id_tipotram   int
> > id_codtram    int
> >
> >
> > Tramites_toma:
> > id            int             (PK)
> > id_mesa               int
> > id_localidad  int
> > domicilio     varchar(50)
> > domicilio_nuevo varchar(50)
> > id_estudios   int
> > id_ocupacion  int
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> --
>
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> http://blog.pegasusnet.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
>
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>

<http://www.google.com/search?q=Leo,%20comenc%C3%A9%20a%20reformular%20la%20srs%20y%20me%20encontr%C3%A9%20con%20algunas%20cosas%20que%20no%20me%20quedan%20muy%20claras%20sobre%20algunas%20observaciones%20que%20hiciste%20:S%20.%20Yo%20hab%C3%ADa%20puesto%20...%0D%0A%0D%0A%22El%20sistema%20debe%20gestionar%20usuarios%22.%20Ok,%20me%20d%C3%AD%20cuenta%20que%20estaba%20confundiendo%20el%20termino%20usuario%20con%20empleado,%20porque%20despu%C3%A9s%20de%20todo%20un%20empleado%20va%20a%20utilizar%20el%20sistema,%20es%20un%20usuario%20del%20sistema%20...%20Pero%20ok,%20voy%20a%20sustituir%20el%20termino%20usuario%20por%20empleado.%0D%0A%0D%0AY%20otra%20pregunta,%20ahora%20sobre%20las%20tablas%20...%20Si%20bien%20me%20dijiste%20que%20no%20tiene%20sentido%20analizar%20las%20tablas%20si%20la%20srs%20no%20est%C3%A1%20lista%20todav%C3%ADa%20me%20comentaste%20que%20te%20parec%C3%ADa%20que%20faltaba%20una%20relaci%C3%B3n%20de%20los%20ciudadanos%20con%20los%20estudios%20y%20la%20ocupaci%C3%B3n%20...%20La%20pregunta%20es%20la%20siguiente:%0D%0A%0D%0AA%20mi%20en%20realidad%20no%20me%20interesa%20guardar%20la%20informaci%C3%B3n%20de%20los%20estudios%20y%20la%20ocupaci%C3%B3n%20de%20la%20persona%20hasta%20que%20no%20se%20haya%20conclu%C3%ADdo%20el%20tr%C3%A1mite%20...%20Por%20eso%20no%20puse%20un%20id%20de%20los%20estudios%20y%20la%20ocupaci%C3%B3n%20en%20la%20tabla%20de%20ciudadanos%20y%20si%20en%20la%20tabla%20que%20uso%20para%20Toma%20de%20tr%C3%A1mites.%20No%20voy%20a%20pedir%20%C3%A9stos%20datos%20hasta%20que%20llegue%20a%20Toma%20de%20tr%C3%A1mites%20y%20los%20datos%20del%20ciudadano%20los%20grabo%20cuando%20inicio%20el%20tr%C3%A1mite%20en%20mesa%20de%20entrada,%20por%20lo%20tanto%20hasta%20ese%20momento%20no%20conozco%20los%20estudios%20y%20la%20ocupaci%C3%B3n%20que%20tiene.%20Pero%20no%20estoy%20seguro%20si%20es%20correcto%20lo%20que%20te%20digo%20y%20me%20gustar%C3%ADa%20que%20me%20dijeras%20si%20est%C3%A1%20bien%20que%20lo%20haga%20as%C3%AD%20...%0D%0A%0D%0ALo%20de%20enviar%20el%20mail%20me%20pareci%C3%B3%20que%20estaba%20bueno%20implementarlo,%20pero%20es%20verdad%20queda%20medio%20colgado%20...%20pensaba,%20que%20se%20pod%C3%ADa%20enviar%20en%20mail%20por%20algun%20error%20en%20el%20sistema%20o%20algo%20as%C3%AD,%20pero%20no%20s%C3%A9%20si%20est%C3%A1%20bien%20hacerlo.%0D%0A%0D%0AMuchas%20gracias%20Leo,%20un%20abrazo.%0D%0ALucas.>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://www3.fi.mdp.edu.ar/cgi-bin/mailman/private/php-avanzado/attachments/20091201/b1008003/attachment-0001.htm 
------------ próxima parte ------------


- Este sistema se lleva a cabo para informatizar las oficinas
del registro nacional de las personas. Mediante éste sistema
se pueden realizar los trámites necesarios que requieran los
ciudadanos.


Diccionario:
Empleado: Persona que interactúa con alguno de los subsistemas
disponibles.

Mesa de entrada: Subsistema mediante en el cuál se inicia el
trámite ingresando datos del ciudadano.

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.

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

Proceso de cierre: Subsistema que recuenta los trámites
existentes según el tipo de trámite (ejemplo: duplicado,
cambio de domicilio).


Requerimientos funcionales del sistema:

1. El sistema debe gestionar empleados.

1.2. El sistema debe diferenciar entre empleados por
medio de una categoría (empleado o jefe).


2. El sistema debe dar de alta y modificar ciudadanos.


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

3.1. El sistema debe comenzar un trámite mediante la mesa
de entrada. Se cargan los datos personales del ciudadano
(número de dni, apellido, nombre, fecha de nacimiento,
telefono, tipo de tramite, codigo de tramite). Además,
también se carga un número de boleta y el nombre del usuario
que inició el trámite.

3.2. El sistema debe verificar si existe un trámite con el
número de boleta ingresado. En caso afirmativo debe poder
tomar el trámite.


4. El sistema debe consultar datos sobre el trámite de un
ciudadano mediante el sub sistema consulta de boletas mediante
el ingreso de su número de documento.


5. El sistema debe realizar el proceso de cierre al final del
día.


6. 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.


7. El sistema debe tener en cuenta para el proceso del punto 5
los trámites con estado finalizado.


8. El sistema debe mostrar un historial de trámites que ha realizado
un ciudadano.


9. El sistema debe poder enviar mails al desarrollador.


10. El sistema debe mostrar información de su versión.



Tablas para la base de datos del sistema:

Categorias:
id		int		(PK)
puesto		varchar(15)


Empleados:
id		int 		(PK)
dni		varchar(9)	(ÚNICO)
ape		varchar(30)
nom		varchar(30)
fnac		date
nick		varchar(20)
pass		varchar(20)
mesa		varchar(2)
toma		varchar(2)
cierre		varchar(2)
boleta		varchar(2)
id_cat		int


Provincias:
id		int
nombre		varchar(20)


Partidos:
id		int
nombre		varchar(20)
id_prov		int


Localidades:
id		int
nombre		varchar(20)
id_part		int


Estudios:
id		int
nivel		varchar(20)
titulo		varchar(20)


Ocupaciones:
id		int
nom		varchar(20)


Ciudadanos:
id		int 		(PK)
dni		varchar(9)	(ÚNICO)
ape		varchar(30)
nom		varchar(30)
fnac		date
sexo		char
telefono	varchar(18)


Tipo_tramite:
id		int 		(PK)
tipo		varchar(15)


Codigo_tramite:
id		int 		(PK)
codigo		char


Estado_tramite:
id		int 		(PK)
estado		varchar(12)


Tramites_mesa:
id		int 		(PK)
num_boleta	varchar(18)
id_ciudadano	int
id_tipotram	int
id_codtram	int
id_estadotram	int
id_empleado	int


Tramites_toma:
id		int 		(PK)
id_mesa		int
id_localidad	int
domicilio	varchar(50)
domicilio_nuevo varchar(50)
id_estudios	int
id_ocupacion	int


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