[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