Desarrolla tu propia web dinámica paso a paso
Hoy iniciamos un nuevo proyecto, una guía práctica para el desarrollo de una página web dinámica. Una página web dinámica son aquellas que permiten a los usuarios crean contenido dentro de las mismas, aumentando la interacción con el navegante. La intención de esta idea es proporcionar tutoriales que puedan ayudar a los nuevos desarrolladores. Para ello, a lo largo de la semana iremos publicando artículos sobre los pasos a seguir para planificar, desarrollar y publicar nuestra web.
¡Una vez hecha las presentaciones empecemos!
¿Por dónde empiezo mi web dinámica? ¿Cómo debo iniciar mi proyecto?
En primer lugar, la primera pregunta que debe hacerse un programador en cualquier proyecto es el objetivo que debe cumplir su software. Es decir, que espera el consumidor que haga su código. Esta suposición que parece obvia es, sin embargo, un error bastante común que se suele cometer.
Por ejemplo, muchas veces se inician proyectos con un objetivo que acaba diluyéndose para realizar todo tipo de tareas excepto la que se había ideado originalmente. Por otro lado, también puede suceder que el proyecto realice las tareas planteadas, pero de forma limitada por emplear demasiado tiempo en tareas menores.
Los errores más comunes en el inicio y desarrollo de un proyecto son:
- No tener una concepción clara de las funcionalidades y problemas que debe suplir nuestro software. Es extremadamente importante reflexionar, tener las ideas claras y organizadas. Un mal planteamiento del proyecto puede llevar sobre costes en los tiempos de trabajo y una disminución de la calidad del software.
- No dividir el proyecto en fases de desarrollo y publicación puede llevar a que el proyecto nunca se publique. Si posponemos demasiado la publicación de nuestro software se corre el riesgo que entrar en una espiral de retrasos que hará que nunca llegue a publicarse o sea un desastre. Sí, lo sé, queremos que nuestro proyecto sea perfecto, que no falle nada, que sea eficiente y que lo haga todo, pero… ese planteamiento no es realista. Si miramos a los grandes desarrolladores de software, cómo por ejemplo Microsoft, Google, entre otros, ellos publican sus programas cuando son funcionales y los expanden o arreglar mediante actualizaciones. Si no fuera así, los tiempos de desarrollo se expandirían exponencialmente.
- No tener una compresión suficiente de las herramientas y tecnologías para nuestro software. Parece obvio que un carpintero debe saber cómo trabajar con la madera, no obstante no todos los tipos de madera son iguales y se tratan de la misma forma, con las herramientas para la creación de páginas web sucede lo mismo. Ha sucedido que equipos con experiencia en el uso de herramientas concretas hayan sido sustituidos, muchas por decisiones ajenas al proyecto, por otro equipo sin experiencia. Esto es extremadamente peligroso y puede llevar a las temidas crisis del software, que suelen llevar al fracaso del proyecto. Sin embargo, no quiero con esto meter miedo a los nuevos desarrolladores, aprender el uso de nuevas herramientas es importante y divertido, pero cuando hay plazos de entrega que cumplir la diversión puede acabarse.
- No documentar adecuadamente el proyecto. Documentar adecuadamente el proyecto es realmente importante, sobre todo si no queréis que vuestros nombres no sean pronunciados junto a un listado de insultos por parte de otro programador encolerizado encargado de entender vuestro código. Ahora enserio, tener un proyecto adecuadamente documentado es vital para su futuro mantenimiento y escalabilidad y da buena imagen de su desarrollador, no seáis vagos y escribid unas malditas líneas.
- Que los desarrolladores sean quienes prueben su propio software. Para un desarrollador su software es su bebe, lo trata con delicadeza y trabaja siempre siguiendo el proceso y orden correcto, por ese motivo no es un buen candidato para hacer pruebas. El aviso de que no debe beberse la lejía esta puesto porque a alguien le pareció buena idea darle un trago a ese líquido corrosivo. Por esa misma regla, siempre habrá alguien que realice alguna acción inesperada, por lo que el software debe ser tolerante a fallos. Además, que las pruebas sean hechas por un tercero, preferiblemente un experto es muy recomendable.
En nuestro caso, el proyecto será una web dinámica que permitirá a los usuarios controlar y gestionar tareas con menús personalizados.
- Admitir la creación y personalización de usuarios.
- Permitir a los usuarios crear menús personalizados
- Gestionar el acceso y permisos de sus menús a otros usuarios.
Para finalizar, hacemos un listado de las herramientas que vamos a utilizar y describir en los siguientes tutoriales:
- Control de versiones con GIT
- Control de tareas y tiempos con Jira
- Interfaz de usuario con VUE
- Servidor con Symhony
De esta forma podemos dar por concluido nuestro primer paso en el desarrollo de nuestra página web desde 0 en PCReviews.
¡Hasta la próxima!
ÚLTIMOS COMENTARIOS