26 sept 2017

PROCESO DEL DESARROLLO WEB

Es bien sabido que para poder lograr un funcionamiento óptimo de una aplicación web se requieren que varias tareas funcionen en armonía para su funcionamiento.


En esta oportunidad les presentares las seis tareas principales que todo des arrollador web debe de manejar antes de dedicarse a trabajar profesionalmente.

De ante mano decirles que en esta ocasión se está abordando el tema de forma general y NO se pretende imponer ningún orden jerárquico en el  orden de las tareas al desarrollar aplicaciones ya  que este orden  depende meramente de quien esté desarrollando, de la habilidad de trabajo con que  cuente y definitivamente de su experiencia.

Pero sí que se puede seguir algún tipo de patrón donde se abarquen las actividades que si o si tienes que desarrollar en tu primer trabajo  profesional o semi-profesional, todo esto con el fin de  brindar un servicio realmente confiable y sobre todo ordenado.

Otro dato a tener en cuenta es que  estas actividades puede que varíen dependiendo el tipo de trabajo, no todos los proyectos tienen el mismo tamaño y tampoco requieren que se emplee al pie de la letra cada una de las etapas, pero en la mayoría de los casos  a partir de  la segunda etapa hasta la sexta sí que se pueden cambiar el orden dependiendo de tu flujo de trabajo, pues la primera es la base en la cual las demás tareas estarán basadas.



A continuación se muestra un diagrama de las tareas al momento de desarrollar una aplicación web.


A continuación se detallaran las actividades que se deben de realizar en cada una de estas tareas.

“Aclararles  que los conceptos expuestos a continuación no son sacados de ningún libro en específico, más que eso, es  mi criterio y mi forma de entender las  etapas antes expuestas, Porque aclaro esto,  pues porque estamos en Internet y como ya se sabe las opiniones pueden ser muy  variadas.”
    

   TOMA DE REQUERIMIENTOS DEL CLIENTE.

En esta etapa principalmente  se identificara el problema que queremos solventar con nuestra aplicación basándonos en las necesidades del cliente.

Principalmente en las inquietudes que estos expongan al memento de realizar un estudio de campo entrevistando a quienes serán los usuarios finales del nuestra aplicación.

Otra de las cosas a tener en cuenta en esta etapa será el alcance  que queremos cubrir con nuestra aplicación pues de esto dependerán muchas cosas que vendrán a continuación, por ejemplo cuantos módulos serán necesarios para desarrollar en nuestra aplicación para que esta cumpla con los requisitos del clientes y de solución a la problemática antes identificada.


Como bien es sabido actualmente se desarrolla con el paradigma (POO), o lo que es igual a Programación Orientada   a Objetos.

De igual manera se recomienda ser totalmente honestos y transparentes con nuestros clientes y  no ofrecer más de lo que en realidad puede  desarrollar, ya que de esto dependerá el éxito de nuestro trabajo.

Se definirán también los limites en que los profesionales se involucraran en el proyecto es decir una vez sea implementado, testeado en funcionamiento y el cliente lo apruebe.
Toda revisión futura será cuenta a parte y no estará incluida en este documento. 


   DESARROLLO FRONT-END


En esta etapa  se desarrollara la parte del diseño visual del propio sitio, así como la vista de las diferentes páginas que integraran todo el sitio.

Se diseñaran las imágenes que se utilizaran en todo el sitio, en esta parta también se abarcara lo que es el DISEÑO GRAFICO, que en la gráfica aparece como ultima tarea, se preguntaran porque?

Pues, sencillo siempre hay algo de diseño gráfico que se le pueda agregar a un sitio web, incluso cuando este haya sido terminado completamente.


Pues como sabrán “el cliente siempre tiene la razón”, y a última hora si se le ocurre cambiar la cabecera del sitio, tocara hacerlo, y para los que son más minuciosos y se toman el tiempo de diseñar los iconos de una forma personalizada imagínense cuanto más trabajo. Por es sencilla razón lo dejamos como ultima tarea.

Basta de hablar de diseño gráfico, y a lo que nos compete, retomando el  tema del desarrollo front-end tendrás que utilizar tus conocimientos acerca de CSS, para proporcionar el estilo y los colores, también determinar la estructura de tu sitio con las etiquetas HTML, lo cual en conjunto  le brindará la apariencia de tu sitio web,  una opción muy usada en estos tiempos es utilizar algo de JAVA SCRIPT para agregar efectos a nuestros sitios, dado que ha tenido mayor uso sobre flash que ha ido en decremento.

Como otra opción hoy en día bastante recurrente, tendrás que decidir si utilizar un gestor de contenido o un framework.

 Sabes a que se refieren esos términos?
En términos genéreles son herramientas que te sirven para facilitar el desarrollo web, sencillo no? Pues no es cierto!!! XD como todo en esta vida nada es tan sencillo, a menos que ya domines estas herramientas claro.

Un gestor de contenido te proporciona una interfaz grafica para desarrollo web, mientras que un framework son unas series de librerías previamente desarrolladas para que las uses según te convenga.
Y como como una constante en este mundo del desarrollo web surgen nuevas interrogantes como que es una librerías?  Como usarla? Bueno pues te invito a ver mi artículo donde trato de explicar más afondo estas tecnologías.

Has escuchado hablar de WIREFRAMING? Que tan conveniente es utilizarlo, cuales tipos de herramientas se necesitan para realizar esta tarea?
Pues te diré que el wireframing, se refiere nada más a realizar un bosquejo de lo que serán todas las páginas de tu sitio, poniendo link entre paginas delimitando cajas en donde mostraras los contenidos que contendrá tu sitio.

Que creen…?  tenemos otra pregunta…xD

Es  necesario utilizarlo?

Esta es mi opinión…
Si se trata de un proyecto bastante grande en el cual el correcto funcionamiento depende de un buen diseño y tienes el tiempo para hacerlo SEGURO que si, es conveniente utilizarlo.
Ahora que si lo que desarrollas es una página o un sitio para don chencho… el señor de la tiendita de tu barrio, pues definitivamente NO.
Eso solo generara tiempo perdido, que puedes invertir en diseñar directamente un prototipo para mostrar a tu cliente.


“Si quieres saber más acerca de este tema te invito a visitar mi artículo completo donde te doy unos tips y te enseño algunas herramientas que se utilizan para este tipo de desarrollo.”


DESARROLLO BACK-END

Desarrollo del lado del servidor, pero de una forma más sencilla es la parte “lógica”  de una aplicación web, es decir la parte de que se dedica a ejecutar las instrucciones que nosotros definimos mediante líneas de código.

De qué forma? Pues hay  muchas, tanto, como lenguajes específicos para este objetivo los hay como lo son PHP, ASP.NET,  JAVA SCRIPT, PHYTON y muchas más.



En esta etapa se programara las funciones específicas que nuestro sitio deberá realizar, desde una sencilla suma matemática, hasta un registro en nuestra base de datos. 

La complejidad de este dependerá del lenguaje que decidas utilizar, y de tu habilidad con que domines este lenguaje.
Algo que agregar es que la selección del lenguaje a programar no se debe de tomar a la ligera, pues debes tomas muchas cosas en cuenta, como SEGURIDAD WEB, documentación, soporte, herramientas, si es multiplaforma etc.
Pero sobre todo cuál lenguaje es  el que tú dominas.

     MANEJO Y DISEÑO DE LA BASE DE DATOS.

Partiendo de que la aplicación en la que desees trabajar almacenara datos, ya sean usuarios y contraseñas, registros en tablas etc.

Pues en esta sección tienes que diseñas la base de datos en general, cuantas tablas llevara, los campos con su tipo de datos, asignar llave principal a cada una de las tablas y las llaves foráneas para cada una de las relaciones que existirán entre cada tabla.



El tamaño de tu base de datos dependerá de que tan grande sea tu sistema web, si solo es para el registro de libros de una librería local, podría considerarse    

pequeño-mediano, pero si se trata de varias sucursales sí que será una cantidad considerable de información, por otro lado,  al existir  interacción de otras sucursales se es necesario enfocarse en configurar de forma adecuada la seguridad de la base de datos, y realizar copias de seguridad con regularidad para asegurar la información por algún fallo de sistema.

Si no sabes que motores de base de datos existen, te invito a que revises mi artículo MOTORES DE BASE DE DATOS  donde te presento las herramientas más usadas en la actualidad.

Queda a elección de cada uno, las hay de paga y también de código abierto, también tendrás que decidir si trabajaras de forma gráfica o lo harás utilizando el lenguaje propio de base de datos, del cual hablaremos en otra oportunidad.



 MANEJO DE SERVIDORES.


Un tema no por ser el último, menos importante, en esta etapa decidirás si tu herramienta web se ubicara de forma local, o en la nube.

Dependiendo de cuantas sucursales sean beneficiadas con la herramienta veras que opción es más viable utilizar.

Cabe recalcar que las herramientas para servidor son variadas, hay servidores sencillos que se utilizan para prueba y error mientras se desarrolla la aplicación web, como lo son XAMP, WAMPP SERVER, APACHE SERVER.

Estos convierten tu ordenador común en un servidor local, de uso personal, ya que se asigna una ip estática, para que puedas acceder a tu sitio web de forma que simule como si estuvieras en internet.

Otro tipo de servidor son los locales, el cual es un hardware especial, con características superiores de un pc normal, se les instala in sistema operativo como WINDOWS SERVER, que es uno de los más usados a nivel mundial, aunque también los hay LINUX famosos por su seguridad, este equipo se tiene que instalar en una habitación especifica donde no habrá multitud de personas merodeando por ahí que puedan estropear algo, estos equipos por lo general permanecen encendidos las 24 horas del día, para que todas las dependientes que se conecten a él y  puedan acceder  a la información que ahí se almacene.

En otros artículos abordaremos la configuración completa de un servidor, y todo lo que hay que tomar en cuenta para poder  poner a disposición servicios como: correos empresariales, registro de docentes, registro de notas  etc. En el presente artículo solo se trata de dar una introducción de forma general.

  DISEÑO GRAFICO


Como ya vimos en el primer apartado, este tema trata de desarrollar todas las herramientas multimedia que tendrá nuestro sitio o sistema web.

Utilizando herramientas graficas como COREL DRAW, PHOTOSHOP, GYMP entre algunos otros que no son muy conocidos que en otra oportunidad les mostrare de forma más detallada.




 

    



No hay comentarios:

Publicar un comentario