Creamos una biblioteca comercial y ejemplos de código que están siendo utilizados por desarrolladores externos. Tenemos documentación (cerrada, disponible para usuarios registrados) que explica ampliamente cómo usar la biblioteca.
Muchos de los desarrolladores son usuarios nuevos, por lo que se encuentran muchos errores rudimentarios.
¿Es apropiado incluir enlaces a la documentación en el registro de errores? ¿Cuáles son los posibles inconvenientes? Puedo prever algunos, pero parece posible superar lo siguiente
- URL de documentación desactualizada
- Errores específicos de la versión que no se reflejan en la última documentación
- Algo más está mal, y estamos perdiendo el tiempo del desarrollador enviándolo a un documento irrelevante
Debajo de un ejemplo de lo que quiero decir, ¿es una buena idea agregar el texto en negrita?
[ERROR] Error al ejecutar el objetivo org.apache.maven.plugins: maven-archetype-plugin: 1.2.3: generate (default-cli) on project standalone-pom: El arquetipo deseado no existe (com.example.library. arquetipos: library-archetype-blank: 1.2.3.0) -> Consulte http://example.com/docs/setting-up-an-archetype para obtener más información y una posible solución de problemas
Respuestas:
De acuerdo con estas pautas de mensajes de error , y mi experiencia, a las personas les gusta ahorrar tiempo al no leer la documentación o la ayuda. Buscar en Google un error también puede estar más allá de ellos, así que incluya un enlace cuando tengan una razón para hacer clic en él.
fuente
Sí más definitivamente PERO:
Si desarrolla con Java o .NET, el documento podría incluirse en un archivo jar o un archivo DLL y, al cambiar el prefijo, su código podría buscarlo localmente.
Si eliges el enfoque wiki, recomiendo encarecidamente DokuWiki por su simplicidad y por el hecho de que se basa en archivos de texto plano que lo harían muy amigable para la inyección automatizada desde el sistema de compilación. Dicho esto, no sé lo suficiente sobre su entorno o clientes para saber realmente si esto sería una buena opción para YMMV.
Algunas de las herramientas más exitosas que he creado adoptaron un enfoque similar en el que el mensaje de error estaba dirigido al usuario real que probablemente realizaría la tarea. Eso significaba que tenía que hacer MUCHA captura y ajuste de excepciones para asegurarme de que el error estuviera en el nivel apropiado de abstracción. También me aseguré de que cada mensaje de error incluiría las fuentes más probables de errores y señala posibles soluciones "¿Olvidó establecer el valor de configuración xxxx?", "Asegúrese de que xxx e yyy no entren en conflicto dándoles nombres diferentes", etc. Donde XXX y demás se generarían a partir del contexto donde ocurrió el error.
Este enfoque fue algo más simple pero también más limitado. Sin embargo, tenía la ventaja de que la documentación siempre estaría presente cuando fuera necesario, sin que se pudriera el enlace.
Su enfoque es la próxima evolución. Mucho más complejo pero también tiene muchos más rendimientos potenciales. Sin embargo, será costoso, pero si se hace correctamente, se amortizará fácilmente.
fuente
Debe preferir señalar la documentación fuera de línea incluida con la biblioteca, en lugar de en línea.
(obviamente, si se trata de una biblioteca de Windows, la ruta sería diferente).
Los beneficios aquí son:
De esta manera, la documentación siempre está sincronizada con la biblioteca. Las personas desarrollan y solucionan problemas de versiones antiguas de bibliotecas. Y su empresa puede cambiar su nombre, cambiar el nombre del producto, o alguien puede dejar caer la pelota en la renovación
example.com
.La web cambia rápidamente. El enlace que proporciona es
http
, pero en unos años sus principales navegadores solo serán compatibleshttps
. O todos podríamos volver algopher
protocolo.La solución de problemas de la aplicación no siempre ocurre en un entorno con acceso a Internet (o al menos acceso directo a su dominio).
Usted menciona que su documentación está detrás de un muro de "autenticación". Tener que crear una cuenta en un sitio web solo para entender un mensaje de error no es agradable (es por eso que SO no requiere que las personas inicien sesión).
fuente
Hay una forma realmente exitosa de abordar este problema. Asegúrese de que la excepción combinada con el mensaje sea lo suficientemente única como para que pegarlos en una búsqueda en la web pueda encontrar fácilmente todas las publicaciones relevantes sobre exactamente este problema.
Esta es la razón secreta por la que odio tanto las excepciones de puntero nulo. Claro que odio que incluso tengamos que buscar nulos, pero lo que más me molesta es que, cuando me encuentro con uno, el único identificador verdaderamente único en el que tengo que buscar es un número de línea volátil.
Sí, me gustaría poder buscarlos. Oh, claro, sé que sucedió porque algo se dejó nulo y luego se usó. Sin embargo, lo que no siempre es obvio de inmediato es POR QUÉ algo se dejó nulo.
Tan seguro, considere todas estas otras soluciones de documentación. Pero lo más perezoso que puedes hacer que me hará más bien es darme algo que pueda googlear.
¿Bastante por favor?
fuente