El primer paso, hable con una gran variedad de clientes potenciales y descubra sus necesidades, lo que están utilizando actualmente y lo que desean que sus productos actuales puedan hacer. Gaste 10 veces más tiempo en esto que crea que necesita hacerlo en este momento. Dibuje posibles GUI en papel y haga que las personas entrevistadas observen los dibujos y hagan sugerencias. Si es posible, contrate a algunas personas en la industria como analistas de negocios para ayudar con este paso. Pregunte sobre los requisitos legales. Algunas industrias tienen muchos problemas de complicación legal y otras no. Cualquier cosa relacionada de alguna manera con el mundo médico y tendrá que investigar y comprender completamente los requisitos de HIPPA, por ejemplo.
Diseñe la estructura de la base de datos y una GUI luego obtenga algunos usuarios reales para jugar con ella. Refactor basado en lo que dicen (es sorprendente la cantidad de cosas que los usuarios dejan en la recopilación de requisitos en las que no piensan hasta que se enfrentan con una GUI real).
Piense en lo que debe ser común a todos los clientes potenciales y en dónde podría necesitar personalización: sus entrevistas deberían guiarlo aquí. Decida cómo manejar la personalización. O incluso si lo permite. Esto puede depender en gran medida de la industria y cuán estándar son sus prácticas.
Si se trata de un software de caja, a menudo el diseño incluye una tabla con campos personalizables que se pueden agregar a formularios e informes por parte del usuario. En una solución basada en web, cada usuario que desee personalización puede tener su propia base de . Si toma esta ruta, la segunda vez que realice una personalización similar para un segundo cliente, considere si necesita refactorizar para que esta sea una nueva característica del software disponible para todos. No es necesario escribir 17 informes de asistencia personalizada que varían solo en uno o dos campos cuando el cliente puede obtener un informe estándar por menos dinero.
En el modelo web, también puede crear un grupo de módulos y hacer que los clientes seleccionen y elijan qué agregar a su solución personalizada. Pagarían en función del número y la complejidad de los módulos que elijan. Entonces, el cliente que quiere solo tres de los informes estándar pagaría menos que el cliente que quiere los 27. Cuando se sugiere una nueva personalización, el cliente paga por el desarrollo si la sugerencia no parece aplicarse de manera inmediata a los demás, pero el módulo está hecho para que otros puedan comprarlo también. Si otros lo compran, el cliente original que solicitó el cambio podría obtener parte del dinero hasta que se paguen los costos de desarrollo. También podrían requerir que algo permanezca como un módulo personalizado y pagar un precio mucho más alto por este trabajo. Tenemos algunos clientes que ni siquiera quieren sus datos en los mismos servidores en la misma ubicación que otros clientes. No hace falta decir que cobramos una gran prima por hacer algo como eso.
La personalización es costosa y puede llevar a que se necesiten muchos más programadores. Considere con mucha fuerza antes de ir a la ruta de personalización. Realmente puede ser lo que vende su solución de software, pero no escala bien. No está mal cuando tienes diez cutomers, pero cuando tienes un par de cientos puede perder el control rápidamente. Es mucho más difícil retractarse de la personalización una vez que la ofreces, que agregar personalización más adelante desde una suite estándar. A menudo, la necesidad de personalización se basa más en la organización de informes corporativos. Si puede crear una interfaz de informes donde las personas puedan seleccionar y elegir la información que desean y guardar sus propios informes personalizados, es posible que se encargue de la mayoría de las necesidades de personalización en su industria sin necesidad de una personalización a gran escala.
Podría ser cierto, si la aplicación en el mismo dominio, en ese caso, la aplicación actúa como un producto para cada uno ... –