Se realiza instalacion y configuraacion servicios Windows
Metodologías Ágiles para el Desarrollo de Software y Metodologias Para el desarrollo Web
1. JOEL CESAR FERNANDEZ SEGURA
METODOLOGIA E INGENIERIA DE SOFTWARE I
ESCUELA DE INFORMATICA
UNIVERSIDAD NIACIONAL DE TRUJILLO
2. METODOLOGIAS AGILES PARA EL
DESARROLLO DEL SOFTWARE
Son una colección de métodos de ingeniería del
software basados en el desarrollo iterativo e
incremental, donde los requisitos y soluciones
evolucionan mediante la colaboración de grupos auto
organizados y multidisciplinarios.
Los métodos ágiles enfatizan las comunicaciones cara
a cara en vez de la documentación. La mayoría de los
equipos ágiles están localizados en una simple oficina
abierta, a veces llamadas "plataformas de
lanzamiento”.
3. El Manifiesto Ágil
El manifiesto ágil es un documento que resume la
filosofía ágil, el cual valora:
Al individuo y las
interacciones del
equipo de desarrollo
sobre el proceso y las
herramientas
Desarrollar software
que funciona más que
conseguir una buena
documentación.
La colaboración con el
cliente más que la
negociación de un
contrato.
Responder a los
cambios más que
seguir estrictamente
un plan.
4. Diferencias entre Metodología Ágil y
Metodología Tradicional
Metodologías Agiles Metodologías Tradicionales
Basadas en heurísticas provenientes de
prácticas de producción de código
Basadas en normas provenientes de estándares
seguidos por el entorno de desarrollo
Especialmente preparados para cambios
durante el proyecto
Cierta resistencia a los cambios
Impuestas internamente (por el equipo) Impuestas externamente
Proceso menos controlado, con pocos principios
Proceso mucho más controlado, con numerosas
políticas/normas
No existe contrato tradicional o al menos es
bastante flexible
Existe un contrato prefijado
El cliente es parte del equipo de desarrollo
El cliente interactúa con el equipo de desarrollo
mediante reuniones
Grupos pequeños (<10 integrantes) y trabajando
en el mismo sitio
Grupos grandes y posiblemente distribuidos
Pocos artefactos Mas artefactos
Pocos roles Mas roles
Menos énfasis en la arquitectura del software
La arquitectura del software es esencial y se
expresa mediante modelos
6. ALGUNAS METODOLOGIAS AGILES
Programación Extrema (XP)
Es una metodología ágil formulada por Kent Beck,
centrada en potenciar las relaciones interpersonales
como clave para el éxito en desarrollo de software. Se
basa en realimentación continua entre el cliente y el
equipo de desarrollo, comunicación fluida entre todos
los participantes, simplicidad en las soluciones
implementadas y coraje para enfrentar los cambios.
8. SCRUM
Es una metodología ágil de
gestión de proyectos cuyo
objetivo primordial es elevar
al máximo la productividad
de un equipo, es decir, que
reduce al máximo la buro-
cracia y actividades no orien-
tadas a producir software que funcione y produce resultados en
periodos muy breves de tiempo (cada 30 dias), por medio de
iteraciones o Sprints; Scrum es ideal para proyecto con un
rápido cambio de requerimientos.
9. Beneficios de SCRUM
Flexibilidad a cambios.
Reducción del Time to Market.
Mayor calidad del software.
Mayor productividad.
Maximiza el retorno de la inversión (ROI).
Predicciones de tiempos.
Reducción de riesgos .
10. METODOLOGIAS PARA EL
DESARROLLO WEB
El avance de Internet y las comunicaciones ha
provocado en los últimos años el nacimiento de nuevas
propuestas metodológicas para la web, estas nuevas
metodologías buscan un fin común, que es entregar
software de calidad, confiable y bien estructurado,
además que sean benéficas en cuestión del tiempo de
trabajo, estas metodologías suelen comprender:
formulación, planificación, análisis(contenido,
iteración funcional, configuración),
Diseño(arquitectónico, navegación, interfaz, base de
datos), implementación y pruebas.
11. EVOLUCION DE LAS METODOLOGIAS
PARA EL DESARROLLO WEB
Las distintas metodologías se pueden dividir en tres
generaciones en base a su sofisticación, estas son:
- Primera Generación:(Principios de los 90) Se sientan las base
de la ingeniería Web, en los que se incluyen conceptos como
construcción de navegación, separación entre estructuras y el
contenido durante el ciclo de desarrollo.
- Segunda Generación: (Segunda mitad de los 90) Se refinan los
primeros modelos y se añaden los soportes de funcionalidad
básica y se llevan a cabo los primeros esbozos de proceso donde
se delimitan los modelos conceptual, lógico y físico.
- Tercera generación: (A partir del 2000): Se lleva a cabo la
profundización en el soporte para la funcionalidad, enfatizacion
de la figura del usuario en los métodos, y se avanza hacia la
estandarización de notaciones, procesos y lenguajes de
especificación.
12. IMPORTANCIA DE UNA METODOLOGÍA WEB
Los principales problemas que nos encontramos es la falta
de fiabilidad, seguridad, escalabilidad, mantenimiento,
integración y la alta dependencia para su desarrollo e
implantación junto con la falta de estándares.
Lo que deseamos es controlar el caos que han provocado en
el pasado procesos creativos de desarrollo con el fin de
proporcionar un proceso sistemático orientado a la mejora
de la calidad de la aplicación final.
Para todo esto se han desarrollado metodologías que
permiten estructurar comunicar, entender, simplificar y
formalizar tanto el dominio como las decisiones de diseño,
así como disponer de documentación detallada para
posibles cambios del software.
13. ALGUNAS METODOLOGIAS PARA EL
DESARROLLO WEB
UWE(UML-BASED WEB ENGINEERING)
Es una metodología detallada para el proceso de
autoría de aplicaciones con una definición exhaustiva
del proceso de diseño que debe ser utilizado. Este
proceso, iterativo e incremental, incluye flujos de
trabajo y puntos de control, y sus fases coinciden con
las propuestas en el Proceso Unificado de Modelado,
UWE está especializada en la especificación de
aplicaciones adaptativas.
14. FASES DEL DESARROLLO WEB CON UWE
Por lo que respecta al proceso de autoría de la aplicación, UWE hace
un uso exclusivo de estándares reconocidos como UML y el lenguaje de
especificación de restricciones asociado OCL. Para simplificar la
captura de las necesidades de las aplicaciones web, UWE propone una
extensión que se utiliza a lo largo del proceso de autoría. Este proceso
de autoría está dividido en cuatro pasos o Actividades:
• Análisis de Requisitos: Fija los requisitos funcionales de la aplicación
Web para reflejarlos en un modelo de casos de uso.
• Diseño Conceptual: Materializado en un modelo de dominio,
considerando los requisitos reflejados en los casos de uso.
• Diseño Navegacional: Lo podemos subdividir en :
Modelo del Espacio de Navegacional.
Modelo de la Estructura de navegación: Muestra la forma de navegar
ante el espacio de navegación.
• Diseño de Presentación: Representa las vistas del interfaz del usuario
mediante modelos estándares de interacción UML.
15. OOHDM ( Método de Diseño de
Hipermedia Orientado a Objetos)
OOHDM es una metodología orientada a objetos.
OOHDM propone el desarrollo de aplicaciones
hipermedia a través de un proceso compuesto por
cuatro etapas: diseño conceptual, diseño navegacional,
diseño de interfaces abstractas e implementación.
Los modelos utilizados en esta metodología proveen
de todos los mecanismos de agrupamiento y herencia
que se necesitan a lo largo del modelado.
16. Fases de OOHDM
Diseño Conceptual
Durante esta actividad se construye un esquema conceptual
representado por los objetos del dominio, las relaciones y
colaboraciones existentes establecidas entre ellos.
En OOHDM, el esquema conceptual está construido por
clases, relaciones y subsistemas.
Diseño Navegacional
La estructura de navegación de una aplicación hipermedia
está definida por un esquema de clases de navegación
específica, que refleja una posible vista elegida.
En OOHDM hay una serie de clases especiales
predefinidas, que se conocen como clases navegacionales:
nodos, enlaces, estructuras de accseso.
17. Diseño de Interfaz Abstracta
Una vez que las estructuras navegacionales son definidas,
se deben especificar los aspectos de interfaz. Esto significa
definir la forma en la cual los objetos navegacionales
pueden aparecer, cómo los objetos de interfaz activarán la
navegación y el resto de la funcionalidad de la aplicación,
qué transformaciones de la interfaz son pertinentes y
cuándo es necesario realizarlas.
Implementación
En esta fase, el diseñador debe implementar el diseño.
Hasta ahora, todos los modelos fueron construidos en
forma independiente de la plataforma de implementación;
en esta fase es tenido en cuenta el entorno particular en el
cual se va a correr la aplicación.
18. REFERENCIAS BIBLIOGRAFICAS
http://es.wikipedia.org/wiki/Desarrollo_%C3%A1gil_de_software.
Ingeniería Software Orientada a Objetos, bernd bruegge, cap: Ingenieria Web.
http://es.wikipedia.org/wiki/Programaci%C3%B3n_Extrema
http://es.wikipedia.org/wiki/Scrum
http://universotela.blogspot.com/2011/05/scrum-y-programacion-extrema.html
http://maestria-modulo7.blogspot.com/2012/04/procesos-de-desarrollo-ligeros-
vs.html
http://www.slideshare.net/coesiconsultoria/4-desarrollo-gil-del-software
http://www.javiergarzas.com/metodologias-agiles
Articulo Métodologías Ágiles en el Desarrollo de Software José H. Canós, Patricio
Letelier yMª Carmen Penadés.
Construyendo aplicaciones web con una metodología de diseño orientada a objetos,
Darío Andrés Silva* Bárbara Mercerat.
http://www.slideshare.net/JosafatMtz/metodologias-para-el-desarrollo-de-
aplicacones-web
http://es.scribd.com/doc/49354262/Metodologias-para-el-desarrollo-de-
Aplicaciones-Web
http://www.ecured.cu/index.php/Metodolog%C3%ADas_para_el_dise%C3%B1o_d
e_aplicaciones_multimedia