Cuando tomé Ingeniería de Software y vi como les gustaba hacer papeles y más papeles, especificando el cómo va a funcionar un sistema, yo sabía que en la vida práctica no se puede hacer así como dicen los libros. Es cierto que es importante documentar todo, pero a mi no me ha funcionado el caso en el que documentas todo y luego, casi mágicamente el sistema hay que transcribirlo del papel al lenguaje de programación favorito.Creo que se necesita mucho conocimiento y experiencia para poder lograrlo de una manera aceptable (no conozco un sistema que haya sido especificado sin hacerle cambios, pero supongo habrá algunos no triviales).
Pues ahora que estoy en Daysoft pasó eso. Documentaron cómo funciona y se debía hacer un sistema para Órdenes de Compra (el chiste es que si uno vende algo, no se le acaben las existencias) y ahora que me va a tocar a mi hacer la implementación real, resulta que no sirve. La base de datos no corresponde, tiene un mal diseño, en fin, yo digo que se va a tener que rediseñar. En eso voy a entrar yo. Creo que ya entendí lo suficiente y puedo dar una mejor (mucho mejor) propuesta de como hacerlo, si quieren con todo y documentación (aunque la verdad no me gustaría mucho).
Para empezar, hay que definir cuáles son los datos que quieren mantener. El proposito del sistema ya me quedó claro, sólo hay algunas cosas que no están claras, así que hay que aclararlas.
Cuando me preguntaron respecto a cuánto me tardaba en hacer el sistema yo solo, les dije que cuatro semanas. Ahora que ya se bien de que trata y que seguramente lo voy a rediseñar, me va a tomar lo mismo. No está muy complicado, sólo debo de saber como calcular algunas cosas (unas sumas y multiplicaciones) y de ahí en fuera todo son búsquedas sobre la base de datos.
La interfaz de usuario es simple. Tal vez se me ocurra algo que pudiera servir más.