Está en la página 1de 8

Republica Bolivariana de Venezuela Ministerio del Poder Popular para la Educacin Superior Instituto Universitario Tecnolgico del Oeste

Mariscal Sucre (IUTOMS) Ingeniera en Informtica 7121

Planificacin y Metodologa

Integrantes:

Benavente, Ayarit Gallardo , Luis E. Hernndez , Edgar Medina , Edwin Mujica, Jean Carlos

Caracas, Abril de 2011

Introduccin

El trabajo que se realizar tendr como finalidad obtener el conocimiento necesario con los que son diferentes metodologas para la elaboracin de un sistema, donde especficamente hablaremos de la metodologa XP o tambin conocida como eXtreme Programming (XP), que la misma se caracteriza por encontrarse dentro de la lista de las metodologas mas ligeras y mucho mas evolutivas.

Es por ello una de las ventajas por la cual hemos escogido esta metodologa para realizar nuestro Sistema.

Metodologa XP

La programacin extrema se basa en una serie de reglas y principios que se han ido gestionando a lo largo de toda la historia de la ingeniera del software. Usadas conjuntamente proporcionan una nueva metodologa de desarrollo software que se puede englobar dentro de las metodologas ligeras, que son aquellas en la que se da prioridad a las tareas que dan resultados directos y que reducen la burocracia que hay alrededor tanto como sea posible. La programacin extrema, dentro de las metodologas giles, se pu ede clasificar dentro de las evolutivas

El mtodo XP (Programacin extrema) define un conjunto de prcticas ptimas para el desarrollo de aplicaciones en excelentes condiciones al colocar al cliente en el centro del proceso de desarrollo, manteniendo una cercana relacin con dicho cliente. XP es capaz de adaptarse a los cambios de requisitos en cualquier punto de la vida del proyecto es una aproximacin mejor y ms realista que intentar definir todos los requisitos al comienzo del proyecto e invertir esfuerzos despus en controlar los cambios en los requisitos. La programacin extrema se diferencia de las metodologas tradicionales principalmente en que pone ms nfasis en la adaptabilidad que en la previsibilidad. Se puede considerar la programacin extre ma como la adopcin de las mejores metodologas de desarrollo de acuerdo a lo que se pretende llevar a cabo con el proyecto, y aplicarlo de manera dinmica durante el ciclo de vida del software. Los Valores originales de la programacin extrema son: simpli cidad, comunicacin, retroalimentacin (feedback) y coraje. Un quinto valor, respeto, fue aadido en la segunda edicin de Extreme Programming Explained. Los cinco valores se detallan a continuacin:

Simplicidad: La simplicidad es la base de la programaci n extrema. Se

simplifica el diseo para agilizar el desarrollo y facilitar el mantenimiento. Un diseo complejo del cdigo junto a sucesivas modificaciones por parte de diferentes desarrolladores hace que la complejidad aumente exponencialmente. Para mantener la simplicidad es necesaria la refactorizacin del cdigo, sta es la manera de mantener el cdigo simple a medida que crece. Tambin se aplica la simplicidad en la documentacin, de esta manera el cdigo debe comentarse en su justa medida, intentando eso s que el cdigo est autodocumentado. Para ello se deben elegir adecuadamente los nombres de las variables, mtodos y clases. Los nombres largos no decrementan la eficiencia del cdigo ni el tiempo de desarrollo gracias a las herramientas de autocompletado y refactorizacin que existen actualmente. Aplicando la simplicidad junto con la autora colectiva del cdigo y la programacin por parejas se asegura que cuanto ms grande se haga el proyecto, todo el equipo conocer ms y mejor el sistema completo .

Comunicacin: La comunicacin se realiza de diferentes formas. Para los

programadores el cdigo comunica mejor cuanto ms simple sea. Si el cdigo es complejo hay que esforzarse para hacerlo inteligible. El cdigo

autodocumentado es ms fiable que los comentarios ya qu e stos ltimos pronto quedan desfasados con el cdigo a medida que es modificado. Debe comentarse slo aquello que no va a variar, por ejemplo el objetivo de una clase o la funcionalidad de un mtodo. Las pruebas unitarias son otra forma de comunicacin ya que describen el diseo de las clases y los mtodos al mostrar ejemplos concretos de cmo utilizar su funcionalidad. Los programadores se comunican constantemente gracias a la programacin por parejas. La comunicacin con el cliente es fluida ya que el c liente forma parte del equipo de desarrollo. El cliente decide que caractersticas tienen prioridad y siempre debe estar disponible para solucionar dudas.

Retroalimentacin (feedback): Al estar el cliente integrado en el proyecto,

su opinin sobre el estado del proyecto se conoce en tiempo real. Al realizarse ciclos muy cortos tras los cuales se muestran resultados, se minimiza el tener que rehacer partes que no cumplen con los requisitos y ayuda a los programadores a centrarse en lo que es ms importante . Considrense los problemas que derivan de tener ciclos muy largos. Meses de trabajo pueden tirarse por la borda debido a cambios en los criterios del cliente o malentendidos por parte del equipo de desarrollo. El cdigo tambin es una fuente de retroalimentacin gracias a las herramientas de desarrollo. Por ejemplo, las pruebas unitarias informan sobre el estado de salud del cdigo. Ejecutar las pruebas unitarias frecuentemente permite descubrir fallos debidos a cambios recientes en el cdigo.
Coraje o valenta: Los puntos anteriores parecen tener sentido comn,

entonces, por qu coraje? Para los gerentes la programacin en parejas puede ser difcil de aceptar, porque les parece como si la productividad se fuese a reducir a la mitad ya que solo la mitad de los programadores est escribiendo cdigo. Hay que ser valiente para confiar en que la programacin por parejas beneficia la calidad del cdigo sin repercutir negativamente en la productividad. La simplicidad es uno de los principios ms difciles de adoptar. Se requiere coraje para implementar las caractersticas que el cliente quiere ahora sin caer en la tentacin de optar por un enfoque ms flexible que permita futuras modificaciones. No se debe emprender el desarrollo de grandes marcos de trabajo (frameworks) mientras el cliente espera. En ese tiempo el cliente no recibe noticias sobre los avances del proyecto y el equipo de desarrollo no recibe retroalimentacin para saber si va en la direccin correcta. La forma de construir marcos de trabajo es mediante la refactorizacin del cdigo en sucesivas aproximaciones.

Respeto: El respeto se manifiesta de varias formas. Los miembros del equipo

se respetan los unos a otros, porque los programadores no pueden realizar cambios que hacen que las pruebas existentes fallen o que demore el trabajo de sus compaeros. Los miembros respetan su trabajo porque siempre estn luchando por la alta calidad en el producto y buscando el diseo ptimo o ms eficiente para la solucin a travs de la refactorizacin del cdigo. Los miembros del equipo respetan el trabajo del resto no haciendo menos a otros, sino orientndolos a realizarlo mejor, obteniendo como resultado una mejor autoestima en el equipo y elevando el ritmo de produccin en el equipo.

Caractersticas Fundamentales Desarrollo iterativo e incremental: pequeas mejoras, unas tras otras. Pruebas unitarias continuas , frecuentemente repetidas y automatizadas,

incluyendo pruebas de regresin. Se aconseja escribir el cdigo de la prueba antes de la codificacin. Vase, por ejemplo, las herramientas de prueba JUnit orientada a Java, DUnit orie ntada a Delphi, NUnit para la plataforma.NET o PHPUnit para PHP. Estas tres ltimas inspiradas en JUnit.
Programacin en parejas: se recomienda que las tareas de desarrollo se lleven

a cabo por dos personas en un mismo puesto. Se supone que la mayor calida d del cdigo escrito de esta manera -el cdigo es revisado y discutido mientras se escribe- es ms importante que la posible prdida de productividad inmediata.
Frecuente integracin del equipo de programacin con el cliente o usuario.

Se recomienda que un representante del cliente trabaje junto al equipo de desarrollo.


Correccin de todos los errores antes de aadir nueva funcionalidad. Hacer

entregas frecuentes.
Refactorizacin del cdigo, es decir, reescribir ciertas partes del cdigo para

aumentar su legibilidad y mantenibilidad pero sin modificar su comportamiento. Las pruebas han de garantizar que en la refactorizacin no se ha introducido ningn fallo.

Propiedad del cdigo compartida: en vez de dividir la responsabilidad en el

desarrollo de cada mdulo en grupos de trabajo distintos, este mtodo promueve el que todo el personal pueda corregir y extender cualquier parte del proyecto. Las frecuentes pruebas de regresin garantizan que los posibles errores sern detectados.
Simplicidad en el cdigo: es la mejor manera de que las cosas funcionen.

Cuando todo funcione se podr aadir funcionalidad si es necesario. La programacin extrema apuesta que es ms sencillo hacer algo simple y tener u n poco de trabajo extra para cambiarlo si se requiere, que realizar algo complicado y quizs nunca utilizarlo. La simplicidad y la comunicacin son extraordinariamente complementarias. Con ms comunicacin resulta ms fcil identificar qu se debe y qu no se debe hacer. Cuanto ms simple es el sistema, menos tendr que comunicar sobre ste, lo que lleva a una comunicacin ms completa, especialmente si se puede reducir el equipo de programadores.
Justificacin de la Metodologa

Nosotros como grupo tomamos la decisin de escoger la metodologa ya que se utiliza y a su vez es apropiada para el desarrollo de esta investigacin, La programacin extrema o eXtreme Programming (XP) ya que es el candidato ideal de los procesos giles de desarrollo de software. Agregando a ello que es muy adaptable a nuestras necesidades ya que no sigue un rgimen muy estricto para poderla seguir de igual manera podemos obtener un enfoque en el trabajo en grupo y nos permite ver desde el punto de vista del Cliente esto quiere decir que nos permitir interactuar con la comunidad donde ella har la revisin al nuestro proyecto, actu como cliente dndonos su opinin en cuanto a que les gustara que agregramos y que modificaciones serian ideales para el mismo esto al momento de cada entrega de diferentes mdulos, otra ventaja del porque trabajaremos con esta metodologa es que dentro de ella no existe la jerarqua dentro del grupo.

Conclusin

Hemos llegado a concluir que dentro de la programacin extrema XP existen diferentes criterios los cuales hacen de la misma una programacin un poco ms rpida y concisa. Dentro de las caractersticas encontramos la del programacin en pareja que no es ms que las tareas de desarrollo se lleve n a cabo por dos personas en un mismo puesto. Se supone que la mayor calidad del cdigo escrito de esta manera, el cdigo es revisado y discutido mientras se escribe de hecho es ms importante que la posible prdida de productividad inmediata. Adems a comparacin a otras metodologas es mucho ms rpido, ya que la metodologa XP conlleva menos protocolo y entre una de ella es que evita que existan jerarquas dentro del grupo como fue detallada en la justificacin de la metodologa.

También podría gustarte