Agrego nuevo PNG con el diseño y tengo los siguientes comentarios y dudas.Artemio escribió:En verdad muchas gracias por empezar, el excel es evidente que lo vamos a rebasar muy pronto en cuanto a un esfuerzo comunitario de actualización por colisiones.
El diseño me parece muy bien, pero tal vez segmentaría más la parte de los tracks y juegos, o por lo menos incluir un par de campos más: si es arreglo o del juego, compositor, interprete, compañia/desarrollador. Estas pueden ser campos en la misma tabla o podemos partirlo. Tampoco que sea un relajo hacer las altas si no tenemos los campos.
El único esencial de los anteriores sería compañía que desarrolló el juego. En caso de no tenerlos en la misma tabla, las tablas extra serían juego, compañía y compositor, con relación muchos a uno con los tracks en la mayoría de los casos (con la excepción de compositor que igual y mejor no tocamos)
Lo que si estaría bien es poner en la relación Show_has_Topic el timecode del tema, como el start_at de los tracks, y cambiar el campo "consola" a "plataforma", para ser más general.
Los fans de score son la neta, muchas gracias a todos =)
Cambios
- Se agrega catálogos en nuevas tablas: Videogame, Platform, Developer y Publisher.
- TrackList adquiere nuevos campos:
- FKs videogame_id y platform_id
- song_type que puede tomar uno de los siguientes valores: 'originalwork', 'arrangement', 'orchestration' (Según yo son los únicos tipos, pero pues alguien que sepa bien de música puede corregirme)
- artist y composer como campos no obligatorios para el alta de una canción
- La tabla Show_has_Topic recibe un nuevo campo llamado 'timecode'
- No agregué el catálogo de Platform directo como un dato de Videogame por que no estamos haciendo una base de datos de Videojuegos, sino de tracks de música de videojuegos, y la plataforma solo es relevante al mencionar el track si es que resulta ser una canción exclusiva de algúna plataforma (No se me ocurren ejemplos en éste momento). Y si manejaramos Platform como un dato de Videogame, nunca podríamos diferenciar si un track es exclusivo de una plataforma.
- Todos los campos, tablas, etc los pongo en inglés por que los que programen conocerán los conflictos de las ñ's y acentos, y prefiero poner una columna con nombre "year" que ver una columna con nombre "anno", "annio" o similares (es trauma mio jaja), así que si se me van las cabras y escribo algo incorrecto, o no cumple con el concepto o significado adecuado se aceptan correcciones con mucho gusto.
- artist y composer los pongo como campos debido a la mención de que podrían ser complicadas las altas si creamos muchos campos obligatorios. Los ingresos deben ser ágiles, pero si requieren que se vuelvan también catálogos más complejos lo revisamos.
- La tabla Videogame se que podría llevar campos como release_date, budget, genre, series, y muchos atributos más, pero hay que pensar mejor primero cuales serían interesantes conocer en las estadísticas para así solo tener los relevantes, y yo después reviso la creación de un módulo para crear columnas dinámicamente.
- En Show_has_Topic se agregó el campo timecode, pero ¿qué es lo que va a guardar ese dato en especial? ¿la hora de inicio del topic durante el programa? ¿la hora inicio y duración? ¿o de qué se compone ese campo?
- ¿Realmente sería interesante saber el Publisher?