Showing posts with label daily scrum. Show all posts
Showing posts with label daily scrum. Show all posts

Thursday 24 July 2014

Agile Scrum para desarrollo de software

El ámbito de desarrollo en el campo del software / IT
Las personas y los individuos asociados con el desarrollo de software y el campo de las TI les gusta usar el término "desarrollo de software" para describir su campo particular de trabajo y participación profesional. El término "desarrollo" es muy utilizado para describir una serie de actividades que atienden al campo de TI. Puede ir desde el desarrollo de código para aplicaciones y sistemas, para el desarrollo de aplicaciones móviles para los sistemas operativos móviles como Android, iOS, Symbian, Windows OS, etc (visita http://en.wikipedia.org/wiki/Mobile_operating_system), "fabricación de "software de juego utilizando lenguajes de script como Ruby, AGSScript, Lua, Marathon lenguaje de marcas, Ada, C ++, C #, D, Lisp, Mercury, Pascal, Perl, Python, Scheme, JavaScript, Java, VBScript, EDL, etc, (visite http://en.wikipedia.org/wiki/List_of_programming_languages​​) llevar a cabo el desarrollo web utilizando HTML, CSS, PHP, Joomla, DotNetNuke, Java, etc, e incluso el desarrollo de sistemas operativos completos para tablets y PCs (visite http://en.wikipedia.org/wiki/List_of_operating_systems para saber más acerca de los sistemas operativos).

El hecho es que en la actualidad, la terminología "desarrollo de software" se utiliza ampliamente para mencionar casi cualquier tipo o actividad asociada con la programación y el desarrollo de código "computerizable" de cualquier tipo, de cualquier manera, o forma. Cuando se utiliza una metodología o marco determinado para desarrollar código computerizable y crear proyectos de software, es importante determinar si el ámbito de desarrollo incluye la actividad específica que está actualmente involucrado o asociado. Marcos de desarrollo de software y gestión de proyectos, tales como Agile tienen el potencial para desarrollar con éxito proyectos de TI relacionado a la gran mayoría de las plataformas de desarrollo y sistemas operativos.

¿Qué es el marco Agile?  
Al explicar Agile de una manera sencilla y directa, puede ser mejor entendido como un conjunto de metodologías de desarrollo de proyectos y los marcos, de los cuales cualquier marco o metodología se puede utilizar de una manera exitosa para desarrollar de forma dinámica los proyectos de casi cualquier tipo y naturaleza, incluyendo proyectos de desarrollo de software. El marco se basa en el desarrollo iterativo e incremental, en el cual los equipos auto-organizados y desarrollo autogestionario comprender, planificar y desarrollar proyectos bajo la supervisión de un jefe de proyecto, y ofrecen la productividad en forma de ráfagas cortas de los ciclos de desarrollo (iterativo desarrollo), conocido como sprints. Una característica única de todos los marcos ágiles es que el desarrollo llevado a cabo por el equipo es "entregable" en la naturaleza es decir, el código desarrollado durante el ciclo de desarrollo del producto es independiente, comprobable y verificable, documentable y listo para su despliegue después de que está rigurosamente comprobado por cualquier defecto de fabricación "."

Una segunda característica, muy importante de desarrollo ágil es que los individuos "que poseen" el proyecto están estrechamente vinculados con la aprobación del desarrollo llevado a cabo por el equipo. Un "código" o "pieza" particular de funcionalidad se comprueba la regresión después de que se desarrolla, y posteriormente presentado a las partes interesadas y los responsables de los proyectos. Averiguan el desarrollo llevado a cabo, y claro como "OK" para su futura integración en el producto real. Esto conduce a un desarrollo exitoso de proyectos de software, ya que la gestión es siempre consciente de lo que la funcionalidad está siendo desarrollado por el equipo, y hasta qué punto satisface los objetivos del proyecto. Si los propietarios del proyecto sienten la productividad que ofrece el equipo no es hasta a la marca, o no se satisface en términos de valor de negocio (qué cantidad importante el código o funcionalidad es desde el punto de vista del mercado, y la cantidad de vale la pena desde el punto de vista financiero) que ofrece la funcionalidad, pueden rechazar toda la funcionalidad e instruir al director del proyecto para reconstruir la secuencia de comandos o el código particular, sobre la base de un nuevo conjunto de entradas y requisitos recomendados por ellos. Esto asegura que el proyecto de software siempre "mantiene" su valor de negocio en todo momento, incluso cuando el producto se está desarrollando actualmente.

Una tercera característica importante de marco Agile es que todas las actividades del proyecto son "tiempo en caja", y por lo tanto, tienen que ser completado dentro de un período de tiempo predeterminado. En un proyecto Agile, cada actividad es de duración determinada. Todas las actividades de desarrollo relacionadas están "configurados" para satisfacer las necesidades de los proyectos únicos, y una duración "adheridas" a ellos para que puedan ser completadas dentro de un tiempo estipulado. Esto garantiza que el proyecto no "Drag-On" y se extienden indefinidamente. Los costos de desarrollo incurridos mientras el proyecto se está desarrollando correctamente y pueden ser "rentable" controlada, de modo que el proyecto no se convierta en "demasiado" caro y difícil de pagar financieramente.

Principios y características ágiles  
Marco Agile difiere drásticamente en comparación con los tradicionales lineal o metodología de cascada. En Agile, el desarrollo del proyecto se lleva a cabo en las explosiones cortas de actividades más que en etapas que tienen que ser "completado" una después de la otra.

Las características principales incluyen Agile:
  • Los equipos de desarrollo de funciones cruzadas consisten de desarrolladores, programadores, probadores, personal de control de calidad, redactores técnicos, analistas de sistemas, etc todos trabajan juntos como un solo equipo compuesto a través de esfuerzos de colaboración, ofrecer y compartir ideas y ayudarse unos a otros durante el proceso de desarrollo.
  • El trabajo en los ciclos de desarrollo cortos, de ritmo rápido, con objetivos precisos - El desarrollo iterativo.
  • Productividad Envíos al final de los ciclos de desarrollo iterativos - El desarrollo incremental. La funcionalidad sigue "creciendo" a través de los ciclos de desarrollo hasta que se desarrolla toda la aplicación, sistema o producto.
  • Comunicaciones humanos y la participación tiene prioridad sobre la autoridad de gestión y la delegación de trabajo.
  • Total transparencia y visibilidad del progreso del equipo a los propietarios, las partes interesadas y los usuarios finales del proyecto.
  • Comentarios y sugerencias ayudan a autocorregirse y ofrecen nuevas formas y medios para llevar a cabo más rápido, un desarrollo más eficiente y confiable.
Una característica importante de todos los marcos ágiles es que los marcos son independientes de la naturaleza del proyecto a desarrollar es decir, el marco no es dependiente de la plataforma o entorno utilizado para desarrollar el proyecto de software en particular. La arquitectura o el diseño pueden variar, y podría ser cualquier cosa. El aspecto importante es que un marco Agile tiene que ser implementado en el proyecto primero, y sus beneficios se acogió posteriormente. Por favor, visite
http://en.wikipedia.org/wiki/Agile_software_development

¿Qué es el scrum Agile?  
Scrum, en pocas palabras, es un "peso ligero" marco Agile, que se utiliza ampliamente para el desarrollo y distribución de productos de software "viables", muy a menudo, y sobre una base consistente. Los productos de software pueden ir desde el desarrollo de nuevos procesos y sistemas web, soluciones de juegos, plugins, aplicaciones móviles, sitios web de comercio electrónico, portales corporativos, desarrollo de temas de WordPress, RAD proyectos (Desarrollo Rápido de Aplicaciones), OOPS (Programación Orientada a Objetos) Proyectos, soluciones CAD / CAM de redacción, programación y configuración de puerto de servicios públicos, el desarrollo web y la plataforma de interfaz soluciones, etc Scrum se adhiere a todos los principios y características que se describen más arriba ya que el marco es "heredada" de la propia Agile Agile.

Scrum ofrece una nueva y mejor forma de gestionar proyectos de software. Hay muchas razones técnicas por Scrum es popular y por qué muchas empresas Fortune 500 prefieren utilizar el marco para sus fines de desarrollo del proyecto. Mientras está siendo introducido a Agile Scrum, una pregunta que sin querer llega a la mente de uno es por qué es Scrum tan popular? ¿Por qué hay tanto "hype" sobre Scrum? ¿Ofrece Scrum una fórmula mágica, que puede hacer maravillas para su proyecto y el desarrollo de software? ¿Por qué debe una organización que ha estado siguiendo una metodología de desarrollo en particular, y se siente cómodo haciéndolo, debe cambiar a Scrum? Hay un artículo separado que se ocupa por completo con el por qué usted debe optar por Scrum. El punto es que este artículo se centra en explicar Scrum a las personas que son nuevos en el tema, y que tienen la menor idea de lo que el marco es sobre todo, y lo que puede "hacer" para usted. Se han realizado esfuerzos para explicar que Agile Scrum es aplicable a casi cualquier tipo de desarrollo de software, y posee ciertas características que hacen que el marco muy popular, así como "de gran alcance".

¿Cómo funciona Scrum?  
El proceso real de Scrum puede llegar a ser difícil de entender, al principio, para los principiantes de Scrum. A pesar de que la implementación de Scrum no es difícil, la gente necesita entender y familiarizarse sobre lo que es la subasta del producto, y cómo lo que realmente ocurre durante el proceso de Scrum. El segundo aspecto es llegar a conocer acerca de los eventos de Scrum. Las reuniones especiales, conocidos como "eventos" son importantes para el control de la actividad de desarrollo, y el análisis de la fiabilidad y la eficacia de la función desarrollada por el equipo. También ayudan a solicitar la opinión de los miembros del equipo, así como los propietarios de los proyectos de manera que el valor de negocio del proyecto no se ve afectada, y se mantiene en todo momento - incluso cuando el producto está siendo desarrollado. Vale la pena tener una "visión general" del proceso de primera.
   
Scrum 
 1. Concepción del proyecto - una idea!
Todos los proyectos, ya se trate de desarrollo de software, o de otro modo, comienzan con una "idea". Los proyectos se desarrollaron a partir de las necesidades. Un proyecto está previsto para cumplir con un requisito específico o lograr un objetivo determinado. Además, cada proyecto se traduce en "algo" dentro de un marco de tiempo específico - un proyecto no puede extenderse indefinidamente. Aquí es importante diferenciar entre un "proyecto" y un "programa". Los programas se denominan generalmente largo, e incluso puede durar años, a diferencia de los proyectos que tienen una vida útil relativamente corta y duran por un breve período, que van desde un par de meses y hasta un año.

Por lo general, una persona o un grupo de individuos se dan cuenta de que vale la pena poner en los esfuerzos y recursos, y desarrollar "algo" para que "otra cosa" puede cumplirse o servir fácilmente. Ese "algo" es el producto, y la "otra cosa" es la solución que el proyecto se supone que debe proporcionar. Esta etapa del desarrollo del proyecto implica una gran cantidad de sesiones de tormenta de ideas de debate y el cerebro, donde el producto se concibe y "aunque con el".

Scrum no figura en esta etapa. Sin embargo, la visión que los propietarios de los proyectos, puede, o puede afectar a la forma en que Scrum se implementa en el proyecto, en el futuro. Esto se debe a la naturaleza de producto a desarrollar puede requerir Scrum para ser configurado de una manera determinada para obtener resultados positivos del proyecto.

2. libere Project - Primeros pasos con el proyecto de software
Una vez que el proyecto está "pensado" el siguiente paso lógico es trabajar en el meollo de la cuestión relativa a la dinámica del proyecto - el objetivo del proyecto, la definición del producto, como el proyecto ideal es que la entrega del producto, de qué manera, lo que se debe ser la "fuerza" del equipo, ¿cuántos miembros del equipo, etc.

Proceso de desarrollo de Scrum no entra en la imagen, incluso en esta etapa. La documentación relativa al proyecto se crea y "todo" en relación con el producto a desarrollar se finaliza - en blanco y negro. Scrum no aboga por una extensa documentación. Usted no tiene que preparar a los diagramas de flujo del sistema de desarrollo y estructuras extensas de diseño para comenzar con el desarrollo de Scrum. Una idea básica será suficiente, y sólo se debe gastar tanto tiempo y esfuerzo que le permitirá empezar a "comenzar" con la actividad de desarrollo real. Lo suficiente información y las especificaciones para desarrollar algunas de las características más importantes del producto.

El lanzamiento del proyecto es atendido por el "propietario del producto" - la persona que funciona como un director de proyecto en el proyecto Scrum, el Scrum Master que el extranjero que Scrum se aplique correctamente y seguido por el equipo, mientras que el proyecto se está desarrollando, y las partes interesadas o propietarios de los proyectos que en realidad patrocinan el proyecto.

3. Creación de la cartera de producto (características del producto Lista) - Definición de las características del producto y funcionalidad  
El proceso de desarrollo de Scrum se inicia con la creación de una lista principal que contiene todas las características y funciones necesarias para crear el producto en su totalidad. En términos simples, todo el producto, que existe actualmente en el papel como "imaginario" por las partes interesadas y los responsables de los proyectos, se "descompone" en sus partes constituyentes, que consta de características y funcionalidades individuales. El producto es cuidadosamente y sistemáticamente, desglosado de manera que cada componente individual puede ser desarrollado, sometido a ensayo, y, finalmente, integrarse con otros componentes de software o funciones desarrolladas por el equipo durante los días. Características y funcionalidades desarrolladas individualmente con el tiempo puede "dar a luz" a un producto de trabajo cuando se integra o ensamblados más adelante.

Cada función o la lista artículo individual se conoce como una "Pila de Producto Item" o una "historia de usuario" en un lenguaje sencillo. Por lo tanto, la Pila de Producto o la lista maestra está fundamentalmente compuesto por elementos del backlog del producto o historias de usuario. La historia de usuario representa una característica del producto, y se desarrolla de forma individual por los miembros del equipo durante el proceso de desarrollo - los sprints diarias. Cada historia puede ser minuciosamente definido. La descripción, criterios de aceptación (Puntos que deben ser "cumplido" o satisfechas antes de que la historia puede ser considerada como desarrolló con éxito), su importancia en el proyecto, y la manera en que se supone que debe ser integrado en el producto final, etc se mencionan para cada historia de usuario.

Una vez creada la lista de características, se dispone en función de la importancia de cada historia de usuario de la cartera de productos. Historias de usuario importantes se disponen en la parte "superior" de la lista, historias menos importantes en el medio, y las características menos importantes y funcionalidad en la parte inferior.

4. reunión de planificación de Sprint - Planificación de la forma de desarrollar las características del producto  
Las funciones del backlog de ​​producto como el principal "columna vertebral" de todas las actividades de desarrollo relacionadas en Scrum. Una vez que se "desarrolla" por el dueño del producto y las partes interesadas, la actividad de desarrollo real puede comenzar. Una reunión especial conocido como "Planificación del Sprint"La reunión se llevó a cabo para iniciar la actividad de desarrollo. La reunión con la asistencia de todo el equipo de desarrollo, además del dueño del producto "PO" y el scrum master "SM".

La reunión se llevó a cabo en dos partes. En la primera parte, el dueño del producto selecciona algunas de las historias de los usuarios más importantes o las características del producto a partir de la parte superior de la pila de producto, y los transfiere a una lista temporal conocido como "Sprint Backlog" para fines de desarrollo. Durante la reunión, el propietario del producto tiene la oportunidad de explicar cada historia de usuario en detalles a los miembros del equipo - como historias de usuario se deben desarrollar idealmente, y cuáles son las actividades que el equipo debe llevar a cabo de manera que cada historia puede ser marcado como completado con éxito.

Durante la segunda mitad de la reunión, el equipo de desarrollo se analiza el trabajo pendiente del sprint y distribuye cada historia a los miembros individuales del equipo. En la práctica, los miembros del equipo deciden por unanimidad en cuanto a quién debe asumir que la historia en función de sus habilidades de desarrollo y niveles de experiencia. Elementos simples y fácilmente desarrollables se dan a los menos experimentados o "fresco", mientras que las historias difíciles, o más complejas son tomados para el desarrollo por los programadores o desarrolladores más experimentados y de alto nivel.

5. Los sprints diarios -. Desarrollar las funciones del producto
Esta es el área principal de actividad en Scrum. Todo el producto se desarrolla en "bits" y "piezas" a través de los ciclos de velocidad diarias. Un ciclo de sprint no es más que una colección de trabajo o días de "desarrollo" durante la cual los miembros del equipo en realidad se sientan delante de un PC y se desarrollan las características de funcionalidad o de productos. El ciclo del sprint es el momento en caja y que no se debe extender su plazo.
 
 
 
 
 
 
 

Cada elemento incluido en el sprint backlog durante la reunión de planificación de Sprint debe desarrollarse mientras el sprint está actualmente en curso. Una breve reunión conocida como "Reunión de Scrum Diario" se mantiene durante un máximo de 15 minutos cada día antes de que los miembros del equipo comienzan con su trabajo. El propósito de la reunión es para tener una idea en cuanto a la cantidad de trabajo se ha completado por cada miembro el día antes, y lo que cada miembro se propone hacer "hoy". Si un miembro del equipo se enfrenta a algún problema o problemas, se puede mencionar en la reunión, y el maestro scrum se asegurará de que el problema se resuelve rápidamente.

En Scrum, los sprints diarias normalmente pueden durar desde 2 semanas hasta un máximo de un mes. La duración de la carrera se decidió en la segunda etapa - la liberación del proyecto - y no debería extenderse, en ningún caso - incluso si cualquiera de las historias de usuario en el sprint backlog no se han desarrollado, o cuyo desarrollo es incompleto.

6. Sprint review -. Comprobación y verificación de la productividad (Es el desarrollo de acuerdo?)
Scrum hace hincapié en el desarrollo de la funcionalidad "entregable" al final del ciclo de Sprint diaria. Cada historia de usuario desarrollado durante el sprint diaria está marcada por el dueño del producto y verificado por su fiabilidad, los niveles de aceptación, y si es "libre de errores". En Scrum, es muy importante para desarrollar unas funciones sin errores - cada historia de usuario debe ser probado adecuadamente para cualquier regresión, y si cumple los criterios de aceptación relacionados con su desarrollo.

Justo después de que termine el ciclo de sprint diario, se realiza una reunión de inmediato para revisar el desarrollo llevado a cabo por el equipo. Es importante diferenciar entre los sprints del día y el ciclo de sprint. El sprint diario es la actividad de desarrollo llevado a cabo por todo el equipo en un día de trabajo en particular. Muchos de esos "sprints diarios" se combinan para formar el "Daily Sprint Ciclo", también conocido como el "ciclo de incremento del producto" en Agile. La reunión se celebró en el final del ciclo de incremento del producto - el ciclo del sprint diario. Es atendido principalmente por el dueño del producto, el scrum master, y los miembros del equipo. No es obligatorio para las partes interesadas a asistir a esta reunión. Ellos pueden optar por asistir a la misma, si así lo desean.

El objetivo principal de este evento, o más bien el encuentro, es comprobar si las características se han desarrollado por el equipo de acuerdo con el plan de producción, y si la funcionalidad tiene algún defecto de "fabricación". Cada característica debe ser plenamente probado por cualquier defecto por el equipo antes de presentarlo en la reunión. El dueño del producto verifica si la función está libre de errores y comprueba si cumple los criterios de aceptación relacionados con ella. Es una especie de "final" control efectuado antes de presentar el desarrollo de las partes interesadas y los responsables de los proyectos en la siguiente reunión retrospectiva del sprint. Durante la reunión, el dueño del producto indica al equipo cómo se puede mejorar su funcionamiento y ofrecer aún mejor la productividad mediante el empleo de prácticas y estándares de programación más eficientes.

7. Sprint retrospectiva - Finalización de la funcionalidad del producto y la contemplación sobre nuevas mejoras  
Agile Scrum aboga por la participación del cliente. El cliente es una entidad muy importante en Scrum, y tiene la última palabra en cuanto al desarrollo de las características del producto se refiere. El manifiesto ágil hincapié principalmente en la participación del cliente y la entrega de los incrementos de productos de duración limitada, ya que estos dos aspectos son muy importantes para el desarrollo de proyectos exitosos. Un cliente "satisfecho" con frecuencia "regresa" para desarrollar más proyectos ya proyectos exitosos ayudan al cliente a ganar mayores márgenes de beneficio.

La retrospectiva ofrece una oportunidad para que todo el equipo para demostrar su productividad frente a las partes interesadas y clientes. Además del dueño del producto, scrum master, el equipo de desarrollo, la reunión también podrán asistir a los usuarios finales, el personal del equipo técnico, proveedores, distribuidores, e incluso otros empleados ya que el propósito principal de la reunión es aprovechar la retroalimentación de los individuos y entidades estrechamente vinculadas con el mercado, y que tienen un buen conocimiento sobre cuáles productos son propensos a "marcar" en el mercado una vez que se lanzó el producto, y lo que puede ayudar al producto en la "venta" características.

La retrospectiva también ofrece una oportunidad para todo el equipo, así como el cliente de reflexionar sobre el proceso de desarrollo, y descubrir qué más se podría hacer para mejorar el producto. Las discusiones se llevan a cabo para determinar la velocidad a la que las historias de usuario en la actualidad se están desarrollando por el equipo, y qué nuevos procesos o métodos deben introducirse para acelerar el proceso.

Suscríbete a la versión permanente y gratuita de la herramienta de gestión de proyectos Quickscrum para tener una idea de cómo funciona la herramienta y lo que tiene que ofrecer. Para las personas que son nuevos en el proceso de scrum puede ser que sea difícil de entender cómo se implementa marco Agile en proyectos reales. Si quieres saber más sobre scrum y su aplicación, y el deseo de desarrollar proyectos de software dinámicas y rentables, por favor envíenos un correo electrónico a support@quickscrum.com - podemos enviarle documentación de formación scrum para ayudarle a saber más acerca de scrum .