¿Cuáles son las necesidades de los usuarios?
La cuestión clave es documentar los requisitos. Una vez vi un proyecto en el que todos los desarrolladores fueron reemplazados a mitad del proyecto y el cliente se vio obligado a sentarse con un nuevo analista de requisitos. El analista de sistemas dice: "Queremos hablar con usted sobre sus necesidades". La primera respuesta del cliente es: "Le dije a su ex todo lo que quería y ahora solo quiero diseñar un sistema para mí". Pepsi
De hecho, en UGG los requisitos no estaban documentados, por lo que el nuevo analista tuvo que empezar de cero si lo único que tiene es un montón de correos electrónicos, notas de reuniones o conversaciones dispersas, y cree. Si comprende las necesidades de sus usuarios, se está engañando.
Otra definición de requisitos es "necesidades del usuario". Una declaración que desencadena el desarrollo de un programa o sistema". Algunos expertos en análisis de requisitos han ampliado esto. concepto: "Las características, funciones y propiedades de un sistema. Estas características, características y propiedades se pueden encontrar "fuera del sistema para satisfacer las necesidades del usuario". Estas definiciones enfatizan qué es el producto en lugar de cómo está diseñado o construido. Las siguientes definiciones van más allá de las necesidades del usuario a las características del sistema:
Los requisitos son especificaciones de objetivos que deben alcanzarse. Describen el comportamiento, las características o los atributos del sistema y son una restricción del sistema durante el desarrollo. proceso.
A partir de estas diferentes formas de definición, no nos resulta difícil ver que "necesidad" no tiene un término claro y no binario. La verdadera "necesidad" está en realidad en la mente de las personas. Y esta persona es principalmente el cliente, pero en circunstancias normales, los usuarios no pueden describir sus propias necesidades, el analista del sistema solo necesita clasificar las necesidades relevantes en su propio idioma de acuerdo con la descripción del usuario y luego verificar más con el El analista del sistema y el cliente deben asegurarse de que el cliente pueda obtener toda la información. Los ingenieros y los clientes deben asegurarse de que todas las partes interesadas del proyecto tengan un conocimiento profundo de la terminología utilizada para describir los requisitos. Los requisitos documentados (como la especificación de requisitos que se describe a continuación) son solo un modelo, una descripción.
2. La tarea del análisis de requisitos
La parte más difícil del desarrollo de un sistema de software. es describir lo que se va a desarrollar. La tarea conceptual más difícil es escribir requisitos técnicos detallados, que incluyen todas las interfaces con usuarios, máquinas y otros sistemas de software. Si esta parte del trabajo no se realiza correctamente, puede terminar. causando un gran daño al sistema y será extremadamente difícil de modificar en el futuro. Los productos nacionales son muy complejos, una empresa puede tener varios sistemas ejecutándose en paralelo y la interfaz entre ellos es el problema más problemático para los desarrolladores de sistemas.
Para aplicaciones comerciales de usuario final, sistemas de información empresarial y Es obvio que el software es parte de un sistema de producto más grande, pero para nosotros, los desarrolladores, sin un documento de requisitos aprobado por el cliente, ¿cómo sabemos cuándo? ¿El proyecto está terminado si no sabemos qué es lo más importante para el cliente y cómo satisfacerlos?
Sin embargo, incluso los requisitos de software no comerciales son necesarios, como bibliotecas, componentes y herramientas internas. uso por parte del equipo de desarrollo. Por supuesto, es posible que ocasionalmente esté de acuerdo con otros sin documentación, pero la mayoría de las veces, la reelaboración es una consecuencia inevitable y el costo de reescribir el código excede con creces el costo de reescribir los documentos de requisitos. Desarrollo de software en China. Esto es lo que le sucedió al personal. .
Recientemente, me encontré con un equipo de desarrollo que estaba desarrollando un conjunto de software asistido por computadora para uso interno que incluía un editor de código. Desafortunadamente, cuando terminaron de desarrollar la herramienta, descubrieron que no podía imprimir archivos de código fuente, que era lo que querían los usuarios. Como resultado, los equipos tuvieron que transcribir manualmente los archivos de código fuente para revisar el código. Esto ilustra que incluso si los requisitos son claros y bien concebidos, si no documentamos el software, sólo seremos culpados si el software no logra los objetivos previstos.
Al contrario de esto, he visto una interfaz simple integrada en un "sistema de seguimiento de errores", pero solo se escribió una especificación de requisitos de una página. Los administradores de sistemas operativos encuentran útil una lista simple de requisitos cuando escriben scripts.
Cuando probaron el sistema según los requisitos, no sólo implementó muy claramente toda la funcionalidad necesaria, sino que no se encontraron errores.
De hecho, el documento de requisitos guía el proceso de desarrollo.