miércoles, 24 de agosto de 2016

WUNDERLIST

Es una herramienta que nos permite planificar, compartir o administrar varios proyectos de trabajo o personales: como planificar las vacaciones realizar y compartir una  lista de compras, en otras palabras, WUNDERLIST te ayuda a completar todas tus tareas personales y profesionales.

Debemos crear una cuenta de usuario o registrarnos ingresando a la página web https://www.wunderlist.com/signup, este registro es totalmente gratis.

REGISTRO A WUNDERLIST


Figura 1
    Figura 1

Cuando ingresamos al sitio https://www.wunderlist.com/signup, proporcionamos el nombre, correo electrónico y una contraseña, o si preferimos creamos la cuenta con Facebook, Google u Outlook, dando click a los logos que los identifican.

CREANDO LISTAS DE TAREAS

Después de estar registrados en la página tendremos lo siguiente:


    Figura 2

En la figura 2 nos obliga a crear una nueva lista de tareas, las cuales son las más comunes: Compras, Películas para ver, Viajes, del Trabajo, la Familia y por ultimo lista privada o personal, estas opciones de listas se puede cambiar su nombre por una que bien usted le parezca conveniente; según la categoría que desee, se elige dando clic sobre el circulo que está al frente de cada uno de ellas, tal como lo muestra la figura 2 (si desea puede seleccionar más de una categoría a la vez), y posteriormente damos clic en el botón GET STARTED (EMPEZAR).

Así:


   Figura 3


Y nos aparecerá algo como esto.

   Figura 4


Otra forma para crear listas es dando click en Create List, y nos pedirá el nombre de la lista a crear y con quienes la voy a compartir.

                                            Figura 5

A continuación les dejo un video mostrando como crear una nueva lista de tareas.



COMPARTIR Y CAMBIAR NOMBRE

Después de creada nuestra tarea o lista de tareas podemos compartirla con nuestros compañeros o editar el nombre de la tarea, dando clic en editar tal como lo muestra la figura 6.

                Figura 6

Después nos aparecerá algo como esto:


                            Figura 7


Ahora vamos a adicionar o compartir nuestra tarea con otra persona, ingresando el correo electrónico o el nombre (siempre y cuando tenga una cuenta creada en Wunderlist, en el caso de ingresar un nombre), damos enter y automáticamente Wunderlist envía un correo de invitación al usuario nuevo para que haga parte de nuestra lista de tareas y damos click en el botón SAVE (Guardar).


                            Figura  8



Aca les dejo un video que le permitirá entender este paso:





Cuando nuestro amigo reciba el correo electrónico notificando que tiene una invitación a mi tarea, él podrá dar click en Join List, lo cual le permitirá confirmar que quiere ser parte de la tarea y además si no está registrado Wunderlist le pedirá que se registre tal como lo muestra las figuras 9 y 10, y posteriormente lo enviara al registro de usuario y deberá realizar el proceso de REGISTRO A WUNDERLIST figura 1.


                              Figura  9



                             Figura  10


Después de estar registrador en Wunderlist procede a pedirle que acepte la invitación como lo muestra la figura 11, y a continuación le permite el ingreso y deberá elegir o crear una nueva lista CREANDO LISTAS DE TAREAS. Figura 2



                             Figura  11


El nuevo compañero a quien se le envió la invitación, podrá administra la lista de tareas, ingresando nuevas tareas o realizar las opciones que tenemos en ADMINISTRAR TAREAS.

ADMINISTRAR TAREAS


Los usuarios puede adicionar una o varias actividades a las listas de tareas que tenga creadas o compartidas, en el campo de texto Add a to-do…, solo se debe digitar la terea y posteriormente dar enter y la tarea quedaría asignada a la lista correspondiente.




   Figura  12



Cuando tenemos una o varias tareas creadas, tenemos varias opciones, las cuales se les pueden aplicar lo siguiente:


   Figura  13


1.    Marcar tareas
Mark as Completed: Marca la tarea de la lista como completada o terminada
Mark as Starred: Marca la tarea de la lista como iniciada


2.    Asignar Tareas
Assign to-do to…: Asigna una tarea a un compañero que con quien se esté compartiendo la lista de tareas



3.    Dar Prioridad Tarea
Due Today: Marca la tarea con prioridad para el hoy mismo
Due Tomorrow: Marca la tarea con prioridad para mañana
Remove Due Date: Remueve la prioridad de la tarea



4.    Enviar Tarea
Create a new list from To-do: Crea una nueva lista pero asignándole la tarea seleccionada y sacándola de la lista de origen.
Move to-do to…: Mueve una tarea a otra lista de tareas
Email Selected To-do: Envia la tarea por correo electronico.
Print Selected To-do: Imprime la tarea seleccionada
5.    Otras opciones
Copy To-do: Copia la tarea
Delete To-do: Elimina la tarea de la lista de tareas


Wunderlist tiene Acceso desde cualquier lugar disponible de forma gratuita en iPhone, iPad, Mac, Android, Windows, Kindle Fire y en la web, Wunderlist funciona perfectamente en todos los dispositivos más importantes para mantener tu vida sincronizada.


CONCLUSIONES
Esta herramienta permite de manera muy organizada la asignación de tareas y la creación y dar terminada cada tarea, para lo cual es muy útil en el ámbito profesional, en especial en la programación, puesto que se manejan requerimientos los cuales, pueden ser muchos y no se pueden tener tan fácilmente en nuestra memoria, y no saber si ya se ha terminado o aún faltan pendientes por terminar y no las tenemos en cuenta.


viernes, 15 de abril de 2016

Planificación

En la planificación debemos tener en cuenta cuan importante es realizar una planeación, ya que con esta podemos identificar todas las actividades que permitirán dar inicio a nuestro proyecto o desarrollo de software.
También dar una organización a nuestro personal, a quienes designaremos su respectiva responsabilidad, de igual forma se puede conocer los riesgos que se pueden presentar en el camino de nuestro proyecto.

Por otra parte debemos considerar la importancia de manejar los costos, es decir, considerar el valor que se necesita para invertir en materia de hardware, si necesitamos mas personal, si es necesaria la compra de licencias de software, según los requerimientos del cliente o la robustez de nuestro proyecto.


Tenemos el monitoreo y revisiones, en este debemos estar al tanto del curso del desarrollo, si hay que realizar nuevas designaciones, si es necesario, con esto podemos conocer los riesgos y tratar de corregirlos para que no se presenten impases que harán que se tarden la entrega o finalización del proyecto.




jueves, 10 de marzo de 2016

Desarrollo Esbelto de Software

Muchas técnicas de la ingeniería de Industrial se han migrado al desarrollo de software, tal es el caso de la manufactura esbelta, la cual a empezado a utilizarse en el desarrollo de software.

Algunos orígenes de la manufactura esbelta se remonta en la década de los 60's como el sistema de producción de Toyota que se denominó Kanban, la cual manejaba la autonomía total, realizar procesos a tiempo, por lo cual conlleva a no manejar almacén y no realizar inspecciones. Este esquema hizo que Toyota fuera la primera ensambladora de  vehículos 

En lo referente al desarrollo de software esbelto (Lean Software Development) fueron Mary y Tom Poppendieck los primeros en transferir los principios de la manufactura esbelta al software.

El desarrollo esbelto de software esta muy ligado con el desarrollo ágil, aunque son conceptos diferentes puesto que el desarrollo esbelto implica agilidad pero para ser ágil no necesariamente puede ser esbelto, como por ejemplo: una persona esbelta no necesariamente debe ser ágil, y una persona ágil no necesariamente debe ser esbelta; para el desarrollo de software esbelto en esencia, consiste en eliminar procesos innecesarios. 


A continuación tenemos algunos principios del Desarrollo de Software Esbelto:

ELIMINAR EL DESPERDICIO

Por desperdicio se entiende todo aquel proceso que no crea valor para los clientes y que en muchas ocasiones retrasa la entrega de proyectos. ¿Qué cosas no crean valor en el desarrollo de software? Lista de requerimientos, diseño de la aplicación, errores y sobre todo funcionalidad no usada.

CONSTRUIR CON CALIDAD

La inspección es un proceso fundamental para lograr el aseguramiento de la calidad del software. Se recomienda guiar nuestro desarrollo a través de pruebas automatizadas sobretodo del tipo unitarias y de aceptación. En este sentido se tiene el mito de que el trabajo del tester es encontrar errores cuando su rol principal es verificar que el producto de software sea de calidad.

Una de las metas fundamental del desarrollo esbelto de software es reducir el tamaño del código de manera considerable tomando en cuenta la premisa que a menor código menor probabilidad de error.


CREAR CONOCIMIENTO


Dada la naturaleza del software no es posible conocer las necesidades de un producto de software desde el inicio y tampoco es posible el diseñar sin implementar dado que en general el diseño se va puliendo poco a poco. Se debe de ver el desarrollo de software como un proceso de aprendizaje y mejora tanto del producto como del negocio en sí. Bajo este contexto, se tiene la creencia que el manejar predicciones crean predictibilidad, este concepto es erróneo dado que el desarrollo de software es un proceso sociotecnológico que al verse involucrado por el capital intelectual no es predecible.


POSTERGAR COMPROMISO


En este punto se deben de tomar decisiones que no sean reversibles y encontrar soluciones que se puedan invertir. En palabras más claras, se debe tratar que el proceso de desarrollo no cambie, se quede estandarizado pero que la solución pueda ser modificada fácilmente.


ENTREGAS RAPIDAS


El entregar versiones del software antes de que esté terminado al 100% hace que se mejore la calidad, que el costo sea más bajo, que haya menos cambios.


RESPETAR A LAS PERSONAS


Se debe fomentar el liderazgo y el emprenderismo a todos los niveles del equipo de desarrollador de software. El control del software debe estar basado en los objetivos.


OPTIMIZAR EL TODO


Se debe tener esta premisa siempre, pero se debe de recordar que el cliente siempre quiere las cosas para ayer y las pruebas siempre están sobrecargadas por falta de tiempo. En este sentido se debe optimizar cuando se pueda y realmente sea necesario. 

martes, 9 de febrero de 2016

Buenas Practicas en la Ingeniería de Sotfware






En el desarrollo de Software o creación de aplicaciones destinadas a usuarios que tienen poco conocimiento en las nuevas tecnologías y en la creación de aplicaciones, que no saben como dar a entender sus propias necesidades, los Ingenieros de Software nos vemos en la obligación de crear una relación con el cliente, diría mas que relación cliente, seria amistosa, una fraternidad, para conocer cuales son sus ideas y expectativas, cuales son sus visiones sus metas, para así guiar a nuestro cliente y ser guiados hasta por ellos mismos, para obtener mejores resultados en el procesos de creación del software, evitando perdidas como el tiempo, dinero, pago a mano de obra, entre otros.

Esto conllevaría a realizar una mejor planificación, ya que se tiene mejor conocimiento global de que es lo que nuestro cliente necesita y posteriormente se entregaría un mejor producto terminado, sin módulos innecesarios, requerimientos inútiles y desgaste en codificación;  De esta manera se satisface todas las necesidades de nuestros clientes y lograr una mejor reconocimiento en la industria del software.


Por otra parte al momento de crear software, nuestra meta es ser profesionales, por eso es necesario tener muy en cuenta que nuestro código sea lo mas explicado posible, con ayuda de lo mas simple que puede existir al momento de programar, la documentación; es una practica que siempre hay que tener en cuenta, ya que con esto podemos hasta nosotros mismos darle solución a una linea de código, pues sabemos bien que tenemos una mente débil y muchas veces nos ha sucedido que realizamos un algoritmo y al pasar los días chequeamos nuestro código y nos encontramos con que "ni idea de que es lo que hace"  o "como funciona" o "como lo realice". De igual manera debemos tener una buena cultura al momento de programar, creando variables con nombres comprensibles que pueda dar a entender que es lo que hace o que es lo que guarda, para que pueda tener una mejor mantenibilidad al código, puesto que no trabajamos solos pues siempre hay un grupo de trabajo que necesita de nuestros avances los cuales complementan el trabajo de los colegas.

Concluiríamos que así se lograría una armonía en el análisis y planificación de nuestros productos dando una mejor calidad y una mejor mantenibilidad al software que desarrollamos para todos nuestros cliente.