[Php-avanzado] especificacion de requerimientos
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Sab Nov 5 16:23:58 ART 2011
Hola Lorena,
El jue, 03-11-2011 a las 12:18 -0300, Lorena Febbraro escribió:
> Leo,
> te mando el SRS.Tenia dudas con respecto a si debo agregar en los
> requerimientos las bibliotecas que voy a utilizar ; en este caso la de
> importar datos de un archivo .xls.
No hace falta especificar bibliotecas si no querés, porque el uso de
una biblioteca, si es tu elección, será una decisión de diseño y por
tanto no corresponde que figura acá, y si es una imposición del cliente,
irá en los Requerimientos no Funcionales.
> Espero se pueda entender cada RF. (me falto la formula de la curva
> abc)
Agregala así no queda incompleto.
Te hago algunos comentarios a la parte funcional:
Para todo el diccionario: los ID no van. Será una cuestión de diseño si
existen o no, pero no son parte del problema que estás analizando.
> Especificación de Requerimientos
>
> (Sistema de Análisis de Gestión Comercial)
>
>
> El Sistema debe realizar un análisis estadístico de la gestión
> comercial de compra y venta de una empresa.
>
> El Sistema debe analizar aspectos cualitativos de los clientes de una
> empresa.
>
> El Sistema debe analizar los aspectos cuantitativos de la gestión
> Comercial de los clientes de la empresa.
Esto que está arriba, que es una introducción muy buena de en qué
cosiste el sistema, no hace falta que empiece con "el sistema debe".
Como es una introducción general, la redacción es libre (pero concisa)
> Requerimientos Empresariales
>
> El Sistema debe optimizar la administración Comercial para obtener un
> perfil detallado de los cliente de cada zona de la empresa y obtener
> informes de la gestión comercial.
>
>
> Requerimientos Funcionales
>
>
> 1- El Sistema debe importar tabla de datos (.xls) del Sistema Central.
>
>
> 2- El Sistema debe almacenar la tabla (1) en forma estructurada.
El 1 y 2 me parece que sería mejor que sean uno solo, ya que si la
forma de almacenar los datos que se leen de la hoja de cálculo es una
sola, la importación de los datos incluye, naturalmente, la forma de
almacenamiento.
No me queda claro a qué te referís con "en forma estructurada". Si te
referís a que esto va en tablas de DB normalizadas, o es una cuestión de
diseño (y no va acá) o es un requerimiento no funcional.
> 3- El Sistema debe gestionar zonas.
En el diccionario de la zona mencionás que vas a tratar a los
Operadores como Sucursales, pero hablás de Zonas que no es ni un
Operador ni una Sucursal.
Creo que tenés que especificar a los Operadores y a las Zonas en esta
etapa, y si después en la etapa de diseño los integrás o tratás de
alguna forma particular, será una cuestión de tu implementación, pero
nunca de la especificación del problema.
> 4- El Sistema debe gestionar clientes.
El Cliente hace referencia a la Ciudad y al País: debés especificar
estas entidades por separado, y luego hacer referencia a ella en los
Clientes, Operadores y todos lo que la usen.
> 5-El Sistema debe gestionar ventas.
Las ventas no son a un Cliente ni nada? Suena raro que la vena solo
tenga fecha y cantidad...
> 6-El Sistema debe gestionar granos.
En el diccionario figura el "tipo de grano" y seguramente es una
entidad codificada. Tenés que especificarla primero y en el grano hacer
referencia a ella.
> 7-El Sistema debe gestionar periodos.
El rango es, por ejemplo, "10 días" ? o es más bien como "fecha desde"
y "fecha hasta" ?
> 8- El Sistema debe gestionar periodos presupuestarios.
Me surge la misma duda que en el anterior.
> (estos periodos presupuestarios serán agregados con criterio
> personal )
No entiendo qué querés decir con esta aclaración :(
No es todo lo que se decida agregar un criterio personal? (esto se
agrega y esto no)
> 9- El Sistema debe generar un informe de las ventas totales de todas
> las zonas de la empresa por periodo por tipo de grano.
Al aparecer acá el tipo de grano, confirma la sospecha del RF6...
> 10- El Sistema debe generar un informe con la variación porcentual de
> dos periodos comparativos de las ventas de cada periodo por tipo de
> grano y por sucursal.
>
>
> Variación porcentual :
>
> Formula : resultado(%) = {[(periodo (n) – periodo(n-1))] / (Periodo
> (n-1)} x 100
La fórmula pasala al diccionario.
> Restricción : ejemplo ( nunca se va a generar la comparación entre
> periodo 1 y periodo 3.)
La restricción es, en realidad, que las comparaciones se generan
siempre con el periodo anterior.
> 11- El Sistema generar un informe con el total de las ventas de todos
> los clientes de cada zona.
>
>
>
> 12-El Sistema debe generar un informe con el total de las ventas de
> cada zona de todos los granos por cada periodo.
>
>
> 13-El Sistemas debe generar un informe con el total de las ventas de
> la empresa de todos los granos por cada periodo.
>
> Formula: ventas_empresa = ∑ i=1 hasta N de ventas.
>
> N: numero de zonas
>
La fórmula pasala al diccionario.
> 14-El Sistema debe generar un informe con la cantidad de clientes de
> cada zona que tuvo actividad comercial en un determinado periodo por
> tipo de grano.
>
>
> (Actividad Comercial : Ventas => 0)
La fórmula pasala al diccionario.
Ventas es en $ o en cantidad de operaciones?
> 15-El Sistema debe generar un informe de las Comisiones de las ventas
> realizadas por cada zona, según el tipo de grano y el periodo.
>
>
> 16-El Sistema debe generar un informe con el porcentaje de la Comisión
> Cobrada (% Comisión Cobrada) por cada tipo de grano por cada zona en
> un periodo determinado.
Acá y en el diccionario figura la comisión, pero no aparece
especificada. Agregala, porque no aparece como un dato de la venta o del
cliente, o ponela como un atributo de una entidad existente y sacala del
diccionario.
> 17-El Sistema debe generar un informe con el Precio Promedio de cada
> zona por cada tipo de grano por cada periodo.
>
>
> 18-El Sistema debe generar un informe con el promedio total de ventas
> por zona de un determinado periodo.
>
>
> 19-El Sistema debe generar un informe con el ranking de clientes por
> cantidades vendidas
Como te decía más arriba, la venta no tiene esta información para hacer
este informe...
> 20-El Sistema debe generar un informe con el ranking de los clientes
> por comisiones.
Idem RF16
> 21-El Sistema debe generar un informe con el total de comisiones por
> zona.
Idem RF16
> 22-El Sistema debe generar un informe con las ventas por cliente por
> grano por zona por periodo.
Idem RF19
> 23-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF8
El RF8 especifica los periodos presupuestarios, y no un informe...
especificá acá el informe que querés e indicá que también será con
gráficos.
> 24-El Sistema debe generar gráficos estadísticos barras y de tortas
> para RF9
Integrá esto con el RF9
> 25-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF10
Idem RF 24 y lo mismo para los de abajo: mostrar un informe de dos
maneras distintas no es generar informes diferentes... no está mal
ponerlos por separado si desglosás todos los RF en subitems, pero que
esto esté así y el resto no le saca homogeneidad a la especificación.
> 26-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF11
>
>
> 27-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF12
>
>
> 28-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF13
>
>
> 29-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF14
>
>
> 30-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF15
>
>
> 31-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF16
>
>
> 32-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF17
>
>
> 33-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF18
>
>
> 34-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF19
>
>
> 35-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF20
>
>
> 36-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF21
>
>
> 37-El Sistema debe generar gráficos estadísticos de barras y de tortas
> para RF22
>
>
>
> 38-El Sistema debe generar una curva abc por zona por tipo de grano de
> un determinado periodo.
Tal y como decís arriba, en el diccionario agregá la fórmula para la
curva.
> 39-El Sistema debe generar un gráfico de la curva abc por zona por
> tipo de grano de un determinado periodo ordenado por el ranking de
> ventas.
>
>
> 40-El Sistema debe generar un gráfico de la curva abc por zona por
> tipo de grano de un periodo, ordenado según el ranking de comisiones.
>
>
> 41-El Sistema debe generar un informe con los clientes por nombre por
> número de cuenta.
>
> Numero de cuenta= id_cuenta
Número de Cuenta en esta etapa no tiene relación alguna con ningún
ID... en el diccionario del cliente, poné "número de cuenta" en lugar de
id_cuenta.
> 42-El Sistema debe generar un informe con los clientes por nombre.
Estos más que un informe son un listado... quiero decir que no hay
proceso para la visualización.
> 43-El Sistema debe generar un informe con los clientes por zona.
> 44-El Sistema debe generar un informe de zonas por cliente.
>
>
> 45-El Sistema debe generar un informe de las zonas por ranking de
> clientes.
>
>
> 46- El Sistema debe generar la conversión de las ventas a toneladas.
>
>
>
>
> Diccionario
>
>
> Cliente ( id_cuenta, nombre, teléfono, dirección, ciudad, país)
>
>
>
> Granos (nombre, tipo_grano, descripción, precio_actual)
>
> Tipo_grano: girasol, maíz, cebada de exportación, cebada forrajera,
> cebada de materia, trigo, candil, sorgo, soja de alta proteína, colza,
> trigo especial, girasol oleico, girasol esteárico, avena.
>
>
> Periodos(id_periodo, rango_fecha)
>
>
> Periodos Presupuestarios(id_ppresupuestario, rango_fecha, comentarios)
>
>
> Ventas(id_venta, fecha, cantidad)
>
> //Cantidad( tengo q convertir a toneladas)
>
>
>
> Comisiones(id_comisión, valor)
>
>
> Zona(id_zona, dirección, teléfono, ciudad, provincia, país)
>
> Voy a tratar a los operadores como sucursales, entonces todos los
> incluyo en “zonas”
>
>
> Lacurva ABCes un método de clasificación de la información, para
> separar los elementos de mayor importancia o impacto. Consiste en
> ordenar los clientes por orden decreciente de su contribución para la
> empresa, ya sea en cantidades de ventas o en comisiones, de modo de
> poder segmentar por grado de dependencia de riesgo u otro criterio a
> definir.
>
> Formula:
>
>
> Promedio: (ventas totales de un periodo) / (cant. Clientes de cada
> zona)
>
>
> Importe de Movimiento:
>
> Fórmula: Precio x cantidad (este dato me viene de la tabla que
> importo)
>
> Precio Promedio:
>
> Fórmula: Importe de Movimiento / Toneladas tipo de grano
>
>
> Ranking de Clientes por Venta:clienteordenado de mayor a menor según
> el total de ventas.
>
> Ranking de Clientes por Comisiones: clientes ordenado de mayor a menor
> según el total de comisiones.
>
> Conversión de KG a Toneladas:1 tonelada = 907.18 kg.
>
>
> Los datos que obtengo por único medio es una panilla .xls
>
>
>
> Cuenta
>
>
> Cliente
>
>
> Zona
>
>
> Grano
>
>
> Comisiones
>
>
> Ventas
>
>
> Importe
> mov.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
Seguimos!!!
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
Blog: http://blog.pegasusnet.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