Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2.1.2 Incremental
Combina elementos del modelo en cascada aplicado en forma
iterativa.
El modelo incremental aplica secuencias lineales de manera
escalonada. Cada secuencia produce "incrementos" del software.
(ejemplo)
Al utilizar un modelo incremental el primer incremento es un paso
esencial. Es decir, se incorporan los requisitos bsicos, pero no
todas los complementos se incorporan. Se entrega al cliente el
software.
Por ejemplo, el software procesador de texto, desarrollado con el
paradigma incremental en su *primer incremento, podra realizar
funciones bsicas de administracin de archivos, edicin y
produccin de documentos.
*el segundo incremento, ediciones ms sofisticadas, y
tendra funciones ms complejas de produccin de documentos.
*el tercer incremento, funciones de correccin ortogrfica y
gramatical
*y en el cuarto, capacidades avanzadas de configuracin de
pgina.
2.1.3 Evolutivo
Consiste en una versin inicial que luego de exponerse va
evolucionando de acuerdo a las necesidades o nuevos
requerimientos por parte del cliente o del usuario final.
Se caracteriza por: La forma en que permiten desarrollar
versiones cada vez ms completas del software.
Modelos que se clasifican en esta categora:
+Construccin de prototipos
+Modelos en espiral
+Modelo de desarrollo concurrente
2.1.4 ESPIRAL
Representa en forma de espiral, una secuencia de
actividades. Este modelo fue originalmente propuesto por Boehm
en 1988, y se diferencia de los dems modelos por considerar el
riesgo.
El modelo en espiral para la ingeniera de software es actualmente
el enfoque ms realista para el desarrollo de software y de
sistemas a gran escala.
Utiliza un enfoque evolutivo, permitiendo al desarrollador y al
cliente entender y reaccionar ante los riesgos en cada nivel
evolutivo.
riesgos para
estratgicos
trazar
objetivos
respectivamente
planes
2.1.5 PROTOTIPOS
La construccin de prototipos pertenece a los modelos de
desarrollo evolutivo. El prototipo debe ser construido en poco
tiempo, usando los programas adecuados y no se debe utilizar
Minimiza
Agrega
riesgos
objetivos
del
de
proyecto
calidad
DESVENTAJAS
Genera mucho tiempo en el desarrollo del sistema
Resulta
como
un
modelo
muy
costoso
Requiere de mucha experiencia en la identificacin de los
riesgos
INTERACTIVO O INCREMENTAL
Fases: *Inicio *Elaboracin *Construccin *Transicin
ITERACIONES
Es prctico dividir el esfuerzo de desarrollo de un proyecto de
software en partes mas pequeas o mini proyectos.
Cada mini proyecto es una iteracin que resulta en un
incremento.
Las iteraciones hace referencia a pasos en el flujo de trabajo, y
los incrementos a crecimientos en el producto.
Las iteraciones deben estar controladas. Esto significa que deben
seleccionarse y ejecutarse de una forma planificada.
Los desarrolladores basan la seleccin de lo que implementarn
en cada iteracin en dos cosas:
La iteracin trata en grupo de casos de uso que juntos
amplan la utilidad del producto desarrollado hasta ahora
La iteracin trata los riesgos ms importantes
En cada iteracin los desarrolladores identifican y especifican los
casos de uso relevantes, crean un diseo utilizando la
arquitectura seleccionada como gua, para implementar dichos
casos de uso. Si la iteracin cumple sus objetivos, se contina
con la prxima. Sino deben revisarse las decisiones previas y
probar un nuevo enfoque.
Las actividades se encadenan en una mini-cascada con un
alcance limitado por los objetivos de la iteracin
que
CENTRADO EN LA ARQUITECTURA
La arquitectura software es parecido al papel que juega la
arquitectura en la construccin de edificios, ya que permite al
constructor ver la imagen completa antes de que comience la
construccin
La arquitectura
Incluye los aspectos
significativos
estticos
dinmicos
ms
de
que
se
dispone
INGENIERIA WEB
Introduccin
Las metodologas, tcnicas y herramientas que se utilizan
en el desarrollo de Aplicaciones Web complejas y de gran
dimensin en las que se apoya la evaluacin, diseo,
desarrollo, implementacin y evolucin de dichas
aplicaciones, hacen referencia a la Ingeniera Web.
DEFINICION
La ingeniera web es la aplicacin de metodologas
sistemticas, disciplinadas y cuantificables al desarrollo
eficiente, operacin y evolucin de aplicaciones de alta
calidad en la World Wide Web
EL PROCESO DE LA INGENIERA WEB
Caractersticas como inmediatez y evolucin y crecimiento
continuos, nos llevan aun proceso incremental y evolutivo,
que permite que el usuario se involucre activamente,
facilitando el desarrollo de productos que se ajustan mucho
lo que ste busca y necesita.
Qu es Ingeniera Web?
Ingeniera Web es el proceso utilizado para crear y mantener
aplicaciones y sistemas web de alta calidad, como tambin es una
filosofa idntica a ingeniera de software.
ETAPAS DE LA INGENIERA WEB
Proceso de Ingeniera Web
Formulacin: Identifica objetivos
alcance de la primera entrega
Establece
el
METODOLOGAS EMERGENTES.
Metodologa: Es el conjunto de mtodos que se utilizan en una determinada actividad con
el fin de formalizarla y optimizarla. Determina los pasos a seguir y cmo realizarlos para
finalizar una tarea.
Emergente o el surgimiento hace referencia a aquellas propiedades o procesos de
un sistema.
La metodologa emergente es cuando si permite adaptar la forma de trabajo a las
condiciones del proyecto.
Por qu?
Ventajas
Las metodologas emergentes motivan ms a los equipos de trabajo.
El principal beneficio del diseo orientado a objetos es que proporciona un
mecanismo para formalizar modelos de la realidad.
Evita mal entendidos de requerimientos entre el cliente y el equipo.
El uso del modelo orientado a objetos alienta la reutilizacin no solo del software,
sino de diseos completos.
Proporcionan mejores resultados en los proyectos de alto riesgo.
Desventajas
Falta de calidad.
Simplicidad.
Se simplifica el diseo para agilizar el desarrollo y facilitar el mantenimiento.
Comunicacin.
Para los programadores el cdigo comunica mejor cuanto ms simple sea.
Retroalimentacin (feedback).
Al estar el cliente integrado en el proyecto, su opinin sobre el estado del proyecto se
conoce en tiempo real.
Coraje o valenta.
Una de ellas es siempre disear y programar para hoy y no para maana.
Roles xp.
1. Programador
Debe existir una comunicacin y coordinacin adecuada entre los programadores y otros
miembros del equipo.
2. Cliente
El cliente escribe las historias de usuario y las pruebas funcionales para validar su
implementacin.
3. Encargado de pruebas (Tester)
El encargado de pruebas ayuda al cliente a escribir las pruebas funcionales.
4. Encargado de seguimiento (Tracker).
El encargado de seguimiento proporciona realimentacin al equipo en el proceso XP. Su
responsabilidad es verificar el grado de acierto entre las estimaciones realizadas y el
tiempo real dedicado, comunicando los resultados para mejorar futuras estimaciones.
5.
Entrenador (Coach)
Es responsable del proceso global. Es necesario que conozca a fondo el proceso XP para
proveer guas a los miembros del equipo de forma que se apliquen las prcticas XP y se
siga el proceso correctamente.
6.
Consultor
Es un miembro externo del equipo con un conocimiento especfico en algn tema
necesario para el proyecto. Gua al equipo para resolver un problema especfico.
7. Gestor (Big boss)
Es el vnculo entre clientes y programadores, ayuda a que el equipo trabaje efectivamente
creando las condiciones adecuadas. Su labor esencial es de coordinacin.
Ventajas y desventajas de la metodologa XP.
VENTAJAS:
Programacin organizada.
REINGENIERA.
Es la transformacin sistemtica de un sistema existente dentro de una nueva forma de
realizar mejoramientos de calidad en unas operaciones, capacidad del sistema,
funcionabilidad, rendimiento o evolucionabilidad a bajo costo, agendas o riesgos para el
cliente.
Quien la hace la reingeniera?
En el mbito de software la reingeniera la realiza un ingeniero de software.
Por qu es importante?
Se vive en un mundo en cambio constante, las demandas acerca de las funciones de
negocios la tecnologa de la informacin que las soporta est cambiando a un ritmo que
impone una enorme presin competitiva en las organizaciones comerciales. Tanto en el
negocio como el software que soporta (o es) el negocio de redisearse para mantener el
ritmo.
Anlisis de inventarios.
Las organizaciones de software deberan tener un inventario tal vez no sea ms
que un modelo en una hoja de clculo que contenga informacin que proporcione una
descripcin detalladas de las aplicaciones activas.
Al ordenador esta informacin de acuerdo con la importancia para el negocio,
antigedad, facilidad actualmente de mantenimiento y otros criterios localmente
importantesaparecen los candidatos para reingeniera.
Reestructuracin de documentos.
La documentacin dbil es la marca de muchos sistemas heredados
1. Crear documentacin consume muchsimo tiempo:
El sistema funciona vivir con lo que tenga. En algunos casos este es el enfoque
correcto. No es posible recrear documentacin para cientos de programas de
computadoras, si un programa es relativamente esttico est llegando al final de su vida
til, djalo ser!.
2. La documentacin debe actualizarse, pero se tiene recursos limitados:
Se documenta completamente aquellas porciones del sistema que en la actualidad
experimenta cambios, con el tiempo evolucionara una coleccin de documentacin til y
relevante.
3. El sistema es crucial para el negocio y de volver a documentarse por completo.
Incluso en este caso un enfoque inteligente es recortar la documentacin a un mnimo
esencial
CONSEJO:
Ingeniera inversa.
La ingeniera inversa es el proceso de recuperacin de diseo. Las herramientas de la
ingeniera inversa obtienen informacin del diseo de datos, arquitectnicos y de
procedimientos a partir de un programa existente.
Restauracin de cdigo.
Llevar a cabo esta actividad requiere analizar el cdigo fuente empleando una
herramienta de reestructuracin, se indican las violaciones de las estructuras de
programacin estructurada, y entonces se reestructura el cdigo (esto se puede hacer
automticamente). El cdigo reestructurado resultante se revisa y se comprueba para
asegurar que no se hayan introducido anomalas.
Restauracin de Datos.
Es una actividad de reingeniera a gran escala. En la mayora de los casos, la
reestructuracin de datos comienza con una actividad de ingeniera inversa. La
arquitectura de datos actual se analiza con minuciosidad y se define los modelos de datos
necesarios, se identifican los objetivos de datos y los atributos, y despus se revisa la
calidad de las estructuras de datos existentes.
Ingeniera directa.
La ingeniera directa no solo recupera la informacin de diseo a partir del software
existente, tambin utiliza esta informacin para alterar o reconstruir el sistema existente
con la finalidad de mejorar su calidad global. En la mayora de los casos el software
sometido a reingeniera vuelve a implementar la funcin del sistema existente y tambin
aade nuevas funciones o mejoras en el desempeo global.