[Php-avanzado] Requerimientos y tablas

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Vie Dic 7 00:09:00 ART 2012


Hola Jeremías,

	paso la SRS al cuerpo del mail para comentarla:


El mié, 05-12-2012 a las 13:46 -0300, Jeremias Brisuela escribió:
> Hola Leo, te adjunto los requerimientos y las tablas para ver si van
> por buen camino! Gracias y nos vemos a la tarde!!  
> 
> 
> 
> 
> 
> 
> documento de
> texto sencillo
> adjunto
> (Requerimientos.txt)
> 
> REQUERIMIENTOS FUNCIONALES
> 
> 1.      El sistema debe gestionar paises
> 
> 2.      El sistema debe gestionar provincias con su país[1].
> 
> 3.      El sistema debe gestionar ciudades con su provincia[2] y su
> pais[1].
> 
> 4.      El sistema debe gestionar editores con su pais[1],
> provincia[2] o ciudad[3].
> 
> 5.      El sistema debe gestionar géneros/estilos musicales.
> 
> 6.      El sistema debe gestionar bandas/intérpretes musicales con sus
> géneros/estilos[5].

	Me acabo de dar cuenta que con esto expresado así, no se puede buscar
por intérprete ni ver en qué bandas tocó un intérprete dado.
	No hay ningún RF que requiera esta funcionalidad, pero te lo quería
contar por si es interesante plantear los intérpretes por separado de
cara a futuras versiones.

> 7.      El sistema debe gestionar imágenes con su editor[4] y su
> banda[6].
> 
> 8.      El sistema debe gestionar discos con su banda/intérprete[6].

	La fecha que aparece en el diccionario, es la de edición del disco o la
de alta del dato al sitio? Por el RF 21 pareciera que es la fecha de
alta, pero especificalo así no hay dudas.
	Aclará en el diccionario en todos los lugares en que aparece "fecha" de
qué es esta fecha.

> 9.      El sistema debe gestionar canciones con su banda/intérprete[6]
> o su disco[8].

	Sugerencia: al diccionario de "Canción" agregale la duración. Cómo dato
opcional está bueno.

> 10.     El sistema debe gestionar mp3 con su editor[4] y su canción
> [9].
> 
> 11.     El sistema debe gestionar videos con su editor[4] y su
> canción[9].
> 
> 12.     El sistema debe gestionar letras con su editor [4] y su
> cancion[9].
> 
> 13.     El sistema debe realizar busquedas de  editores[4].
> 
> 14      El sistema debe realizar busquedas de  bandas/intérpretes[6].
> 
> 15.     El sistema debe realizar busquedas de  discos[8].
> 
> 16.     El sistema debe realizar busquedas de  canciones[9].
> 
> 17.     El sistema debe reproducir canciones[9] y videos[11].
> 
> 18.     El sistema debe calificar (mediante el método de calificación
> 1):
> 
>         a- bandas/intérpretes[6].
>         b- discos[8].
>         c- canciones[9].
> 
> 19.     El sistema debe calificar (mediante el método de calificación
> 2):
>         
>         a- imagenes[7].
>         b- MP3[10].
>         c- videos[11].
>         d- letras[12].
> 
> 20.     El sistema debe calificar (mediante el método de calificación
> 3) a editores[4].
> 
> 21.     El sistema debe realizar rankings  de:
>                 a- bandas/intérpretes[6].
>                 b- discos[8].
>                 c- canciones[9].
>         Ordenados por:  
>                 a- Calificación (los mejores puntuados).
>                 b- Visitas (los más visitados).
>                 c- Fecha (los más recientes).
> 
> Diccionario:
> 
>   País: nombre.
> 
>   Provincia: nombre,país.
> 
>   Ciudad: nombre, provincia, país.
> 
>   Editor: nombre, apellido, país, e-mail, fecha de nacimiento,
> provincia, ciudad, nick, avatar (imagen de perfil), calificación.
> 
>   Género/estilo musical: nombre.
> 
>   Banda/intérprete musical: nombre, descripción, integrantes,
> géneros/estilos, calificación, visitas,  fecha.
> 
>   Imágen: editor, banda/intérprete, calificación.
> 
>   Disco: banda/intérprete, imágen, calificación, visitas,  fecha.
> 
>   Canción: nombre, banda/intérprete, calificación, visitas,  fecha,
> disco.
> 
>   MP3: enlace, canción, editor, calificación, reproducciones.
> 
>   Video: enlace canción, editor, calificación, reproducciones.
> 
>   Letra: contenido, canción, editor, calificación, visitas.

	Las  "visitas" de la Letra no se usa en ninguna parte... sacá el
atributo.

>   Método de calificación 1: todos los visitantes del sitio podrán dar
> una puntuación de 1 a 5 a un artículo. La calificación del artículo se
> realizará mediante el promedio de todas las puntuaciones dadas por los
> usuarios a dicho artículo.
> 
>   Método de calificación 2: todos los editores podrán dar una
> puntuación de 1 a 5 a un artículo. Un editor no puede puntuar un
> artículo propio. La calificación del artículo se realizará mediante el
> promedio de todas las puntuaciones dadas por los editores a dicho
> artículo.
> 
>   Método de calificación 3: todos los editores obtendrán una
> puntuación de 1 a 5. La calificación del editor se realizará mediante
> el promedio de todas las puntuaciones dadas por los editores a los
> artículos del editor.

	En todos los métodos de calificación hablás de los "artículos", pero tu
software no manejará nada que se llame de esta manera!
	En vez de la palabra "artículo", hacé referencia a la cosa o las cosas
que participen de las puntuaciones.

>   Rankings: se trata de seleccionar y mostrar los 10 primeros
> artículos que resulten de ordenar elementos (canciones por ejemplo)
> teniendo en cuenta un factor (número de visitas).
> 
> REQUERIMIENTOS NO FUNCIONALES.
> 
> 1.      El sistema debe ser web. 


	Nada más por ahora.
	Seguimos!


-- 
Leonardo Tadei
leonardot en pegasusnet.com.ar
Web: http://leonardo.tadei.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