[Php-avanzado] Normalizacion
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Lun Dic 12 23:16:11 ART 2011
Hola Pablo,
recién puedo ver esto.
Te paso unas correcciones:
- en asistencias, si bien tal y como pusiste hace falta guardar el
nombre del taller y del plan, también guardá los IDs de ambas cosas,
porque si no no se pueden distinguir homónimos.
Las horas y las fechas, si no entiendo mal lo que estás planteando, te
va a dar problemas así (además de que no respeta la normalización.
Deberías tener un campo hora_entrada y otro hora_salida de tipo
datetime, y no extra de tipo fecha.
Si después no lo querés mostrar así, lo parseás y lo mostrás
diferente... la visualización de la información siempre es acomodable.
- en faltas_justificadas te falta el id_evento, y te sobra nombre y
apellido del alumno: como los registrás, no se pueden borrar, y como en
"asistencias" no tiene sentido el campo.
- en planes, renombrá el campo hora_por-dia a hora_por_dia... ese guión
te va a traer 4 dolores de cabeza...
El resto se ve bien!
Para qué usás formato InnoDB si no definís ninguna integridad
referencial ?
Saludos!
El vie, 02-12-2011 a las 11:33 -0300, pablo beroiza escribió:
> Leo! Te adjunto el archivo .sql.
>
>
> Saludos!!!
>
> El 30 de noviembre de 2011 16:17, Leonardo Tadei - Pegasus Tech Supply
> <leonardot en pegasusnet.com.ar> escribió:
> Hola Pablo,
>
> El dom, 27-11-2011 a las 17:34 -0300, pablo beroiza escribió:
> > Hola Leo! Te envio las correcciones. Reemplace el nombre de
> la entidad
> > "CURSO" por "PROMOCION" nose si es la adecuada, si no,
> tirame unos
> > nombres y la cambio.
>
>
> "Promoción" a mi me suena mucho mejor que "Curso".
> Tal vez revolviendo un poco surja una palabra mejor,
> pero no manejo
> tanto el lenguaje escolar para sugerir una ahora :(
>
>
> La Normalización se ve bien y acorde con la SRS.
> La guardo para futura referencia.
>
> Adelante con las pantallas y con la lógica de la
> aplicación!
>
>
> PD: si querés, enviame una exportación de las tablas creadas
> para ver
> los tipos de campos que usaste.
>
>
> > Saludos!
> >
> >
> > Control de entrada y salida
> >
> >
> > Este sistema se realiza con el fin de optimizar el proceso
> de
> > recoleccion, actualizacion y administracion de los datos de
> hora
> >
> >
> > de entrada y hora de salida de cada taller.
> > La realizacion de este sitema se basa en la creciente
> necesidad de
> > gestionar la informacion desde cualquier pc en la intranet.
> > Los usuarios finales obtendran al usar este producto la
> ventaja de
> > tener la informacion de las horas trabajadas en el momento
> >
> >
> > y lugar que se requiera por intermedio de una aplicacion
> web.
> >
> >
> > Requerimientos funcionales
> >
> >
> > 1 - El sistema debe gestionar jefes.
> > 2 - El sistema debe gestionar talleres con su jefe[1].
> > 3 - El sistema debe gestionar planes.
> > 4 - El sistema debe gestionar promocines
> > 5 - El sistema debe registrar alumnos con sus talleres[2] ,
> su
> > plan[3], su promocion[4].
> > 6 - El sistema debe modificar alumnos con sus talleres[2] ,
> su
> > plan[3], su promocion[4].
> > 7 - El sistema debe gestionar dias no laborables.
> > 8 - El sistema debe gestionar periodos de tiempo.
> > 9 - El sistema debe registrar asistencia de los alumnos.
> > 10 - El sistema debe mostrar las horas trabajadas por
> alumno.
> > 11 - El sistema debe gestionar eventos.
> > 12 - El sistema debe registrar las faltas justificadas con
> su
> > evento[10], por alumno.
> > 13 - El sistema debe manejar promocion de un curso.
> >
> >
> > Requerimientos no funcionales
> >
> >
> > 1 - El ingreso al sistema estara restringido por usuario y
> contraseña.
> >
> >
> > Diccionario
> >
> >
> > JEFESTALLERES (nombre, apellido, fecha_nac)
> > TALLERES (nombre, jefe)
> > PROMOCIONES (nombre) Nivel de secundario (Ej.1º,2º, 5°,
> pase,
> > egresadoetc)
> > PLANES (nombre, hora_por_dia) Los alumnos cumplen horas
> independiente
> > de los talleres que asisten.
> > PERIODOS (fecha_inc, fecha_fin) Fecha predefinida para una
> consulta
> > (Ej. 01/02/211 - 30/05/2011)
> > FERIADOS (fecha,nombre) Dias que no se sumarian
> > ALUMNOS (nombre, apellido, fecha_nac, taller, fecha_ingreso,
> plan,
> > curso, alumno_activo)
> > ASISTENCIAS (alumno, taller, plan, hora_entrada,
> hora_salida,
> > comentario,)
> > EVENTOS (nombre) Nombre de la falta (Ej. campamento, salida
> coro, etc)
> > FALTAS_JUSTIFICADAS (alumno, fecha, evento)
> >
> >
> >
> >
> > Cardinalidad
> > TALLERES 1------1 JEFESTALLERES
> > TALLERES N------M ALUMNOS
> > CURSOS 1--------N ALUMNOS
> > PLANES 1--------N ALUMNOS
> > EVENTOS 1------1 FALTAS_JUSTIFICADAS
> >
> >
> > Normalizacion:
> >
> >
> > EVENTOS (id_evento, nombre) FALTAS_JUSTIFICADAS
> (id_falta_just,
> > nombre_evento, alumno, fecha )
> >
> >
> > PERIODOS (id_periodo, fecha_inc, fecha_fin) FERIADOS
> (id_feriado,
> > fecha, nombre)
> >
> >
> > JEFESTALLERES (id_jefe_taller, nombre, apellido, fecha_nac)
> TALLERES
> > (id_taller, id_jefe_taller, nombre )
> >
> >
> > PROMOCIONES (id_curso, nombre) PLANES (id_plan, nombre,
> > hora_por_dia)
> >
> >
> > TALLER_ALUMNO (id_taller_alumno, id_taller, id_alumno)
> Entidad que une
> > "alumnos" y "talleres"
> >
> >
> > ALUMNOS (id_alumno, nombre, apellido, fecha_nac,
> fecha_ingreso,
> > id_plan, id_curso, alumno_activo)
> >
> >
> > ASISTENCIAS(id_asistencia, id_alumno, taller, nombre_plan,
> > Horas_por_dia, hora_entrada, hora_salida, comentario)
> >
> > El 25 de noviembre de 2011 22:16, Leonardo Tadei - Pegasus
> Tech Supply
> > <leonardot en pegasusnet.com.ar> escribió:
> > Hola Pablo,
> >
> > El vie, 25-11-2011 a las 12:29 -0300, pablo beroiza
> escribió:
> > > Hola Leo! Mando la normalización con los cambios
> que
> > charlamos el
> > > Jueves. Hay una cosa que no entendi con respecto a
> las
> > promociones de
> > > los alumnos, si había que ponerle un atributo mas
> a la
> > entidad
> > > "ALUMNO". Si me lo podes explicar lo hago.
> >
> >
> > No era un atributo más al alumno. Lo que
> charlamos fue
> > sobre
> > generalizar (y ponerle un nombre más adecuado) a la
> tabla
> > Cursos para
> > que puedan contener 1ro, 2do, 3ro, 4to, 5to, Pase y
> Egresado,
> > de manera
> > tal de poder mantener el registro de las horas de
> los talleres
> > incluso
> > para alumnos que egresen o que cambien de escuela.
> >
> > Pasando a la normalización, a la tabla
> Alumnos le sobra
> > el campo
> > id_taller: si es una relación N-M se almacena tal y
> como
> > hiciste en una
> > tabla aparte, ergo el campo no tiene sentido en la
> tabla
> > Alumnos.
> >
> > El resto se ve bien!
> >
> > Con estos ajustes, la versión que viene
> debería ser la
> > última!!
> >
> >
> > >
> > > Control de entrada y salida
> > >
> > >
> > > Este sistema se realiza con el fin de optimizar el
> proceso
> > de
> > > recoleccion, actualizacion y administracion de los
> datos de
> > hora de
> > > entrada y hora de salida de cada taller.
> > > La realizacion de este sitema se basa en la
> creciente
> > necesidad de
> > > gestionar la informacion desde cualquier pc en la
> intranet.
> > > Los usuarios finales obtendran al usar este
> producto la
> > ventaja de
> > > tener la informacion de las horas trabajadas en el
> momento y
> > lugar que
> > > se requiera por intermedio de una aplicacion web.
> > >
> > >
> > > Requerimientos funcionales
> > >
> > >
> > > 1 - El sistema debe gestionar jefes.
> > > 2 - El sistema debe gestionar talleres con su
> jefe[1].
> > > 3 - El sistema debe gestionar planes.
> > > 4 - El sistema debe gestionar cursos.
> > > 5 - El sistema debe registrar alumnos con sus
> talleres[2] ,
> > su
> > > plan[3], su curso[4].
> > > 6 - El sistema debe modificar alumnos con sus
> talleres[2] ,
> > su
> > > plan[3], su curso[4].
> > > 7 - El sistema debe gestionar dias no laborables.
> > > 8 - El sistema debe gestionar periodos de tiempo.
> > > 9 - El sistema debe registrar asistencia de los
> alumnos.
> > > 10 - El sistema debe mostrar las horas trabajadas
> por
> > alumno.
> > > 11 - El sistema debe gestionar eventos.
> > > 12 - El sistema debe registrar las faltas
> justificadas con
> > su
> > > evento[10], por alumno.
> > > 13 - El sistema debe manejar promocion de un
> curso.
> > >
> > >
> > > Requerimientos no funcionales
> > >
> > >
> > > 1 - El ingreso al sistema estara restringido por
> usuario y
> > contraseña.
> > >
> > >
> > > Diccionario
> > >
> > >
> > > JEFESTALLERES (nombre, apellido, fecha_nac)
> > > TALLERES (nombre, jefe)
> > > CURSOS (nombre) Nivel de secundario (Ej.1º,2º,
> etc)
> > > PLANES (nombre, hora_por_dia) Los alumnos cumplen
> horas
> > independiente
> > > de los talleres que asisten.
> > > PERIODOS (fecha_inc, fecha_fin) Fecha predefinida
> para una
> > consulta
> > > (Ej. 01/02/211 - 30/05/2011)
> > > FERIADOS (fecha,nombre) Dias que no se sumarian
> > > ALUMNOS (nombre, apellido, fecha_nac, taller,
> fecha_ingreso,
> > plan,
> > > curso, alumno_activo)
> > > ASISTENCIAS (alumno, taller, plan, hora_entrada,
> > hora_salida,
> > > comentario,)
> > > EVENTOS (nombre) Nombre de la falta (Ej.
> campamento, salida
> > coro, etc)
> > > FALTAS_JUSTIFICADAS (alumno, fecha, evento)
> > >
> > >
> > >
> > >
> > > Cardinalidad
> > > TALLERES 1------1 JEFESTALLERES
> > > TALLERES N------M ALUMNOS
> > > CURSOS 1--------N ALUMNOS
> > > PLANES 1--------N ALUMNOS
> > > EVENTOS 1------1 FALTAS_JUSTIFICADAS
> > >
> > >
> > > Normalizacion:
> > >
> > >
> > > EVENTOS (id_evento, nombre) FALTAS_JUSTIFICADAS
> > (id_falta_just,
> > > nombre_evento, alumno, fecha )
> > >
> > >
> > > PERIODOS (id_periodo, fecha_inc, fecha_fin)
> FERIADOS
> > (id_feriado,
> > > fecha, nombre)
> > >
> > >
> > > JEFESTALLERES (id_jefe_taller, nombre, apellido,
> fecha_nac)
> > TALLERES
> > > (id_taller, id_jefe_taller, nombre )
> > >
> > >
> > > CURSOS (id_curso, nombre) PLANES (id_plan,
> nombre,
> > hora_por_dia)
> > >
> > >
> > > TALLER_ALUMNO (id_taller_alumno, id_taller,
> id_alumno)
> > Entidad que une
> > > "alumnos" y "talleres"
> > >
> > >
> > > ALUMNOS (id_alumno, nombre, apellido, fecha_nac,
> id_taller,
> > > fecha_ingreso, id_plan, id_curso, alumno_activo)
> > >
> > >
> > > ASISTENCIAS(id_asistencia, id_alumno, taller,
> nombre_plan,
> > > Horas_por_dia, hora_entrada, hora_salida,
> comentario)
> > >
> > >
> >
> > > _______________________________________________
> > > 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
> > Blog: 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
> >
> > _______________________________________________
> > 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
> Blog: 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
>
>
>
> _______________________________________________
> 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
Pegasus Tech Supply
Tel: (+54)(+223) 471-2880
La Salle 1131 - Mar del Plata - Argentina
http://www.pegasusnet.com.ar / http://blog.pegasusnet.com.ar
http://www.prometeustech.com.ar / http://www.grupopegasus.com
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado