N u n c a d i g a s “ n o p u e d o ” n i e n
b r o m a , p o r q u e e l s u b c o n s c i
e n t e n o t i e n e s e n t i d o d e l h u
m o r , l o t o m a r a e n s e r i o y t e l
o r e c o r d a r a c a d a v e z q u e l o i
n t e n t e s .
F a c u n d o C a b r a l
I n g e n i e r í a
W e b P a b l o S e v i l l a
J a r q u í n
p a s j @ g u e g u e . c o m . n i
Calendario
Primer Parcial
21/28 de Mayo
Examen Final Entrega de Notas Examen de Rescate Fechas Feriadas
2/9 de Agosto 11, 12 y 13 de Agosto 16 de Agosto 19 de Julio
Índice 1 2 3 4 5 6 7 8
Introducción Tecnologías El proceso de desarrollo Ingeniería de Requerimientos Diseño de aplicaciones Web Adaptación Aplicación, Implementación y Mantenimiento Evaluación de la Calidad
Ingeniería Web La ingeniería web es la aplicación de metodologías sistemáticas, disciplinadas y cuantificables al desarrollo eficiente, operación y evolución de aplicaciones de alta calidad en la World Wide Web.
Ingeniería Web comparada a Ingeniería del software La ingeniería Web no es un clone de la
Ingeniería del Software aunque ambos involucren programación y desarrollo de software.
El desarrollo del WebApps es distinto respecto
al desarrollo de software de otras categorías.
5
Diferencia implica una mezcla de publicación impresa y
desarrollo de software, marketing e informática, de comunicaciones internas y relaciones externas, de arte y tecnología
Por tanto, el desarrollo del un WebApp es un
esfuerzo multidisciplinario debido al manejo de múltiples formatos, con una mezcla de atención social para saber su efecto ético y legal 6
Similitudes
Todas las actividades CGCtradicional (Control ycomo Garantía de la ingeniería software son:de la Calidad)
establecimiento y supervisión de estándares, revisiones técnicas formales, análisis, seguimiento y registro de informes, etc,
son igualmente aplicables a la Ingeniería Web.
Sin embargo, en la Web toman especial relevancia para valorar la calidad aspectos como: Usabilidad, Funcionabilidad, Fiabilidad, Seguridad, Eficiencia y Mantenibilidad 7
Atributos de las aplicaciones web •El usuario puede acceder fácilmente a estas aplicaciones empleando un navegador web (cliente). • Si es por internet, el usuario puede entrar desde cualquier lugar del mundo donde tenga un acceso a internet. • Pueden existir miles de usuarios pero una única aplicación instalada en un servidor, por lo tanto se puede actualizar y mantener una única aplicación y todos sus usuarios verán los resultados inmediatamente. • Emplean tecnologías como Java, JavaFX, JavaScript, DHTML, Flash, Ajax... que dan gran potencia a la interfaz de usuario. • Emplean tecnologías que permiten una gran portabilidad entre diferentes plataformas. Por ejemplo, una aplicación web flash podría ejecutarse en un dispositivo móvil, en una computadora con Windows, Linux u otro sistema, en una consola de videojuegos, etc. 8
Portabilidad de nuestros datos
Solución a problemas reales
No debería molestarme En constante mejora
Multiplataforma Debería ser amistosa Debería tener una visión No debería ser pretenciosa
Visualmente atractiva
Debería tener una excelente documentación pero innecesaria
9
Modelo de proceso de la Ingeniería Web (I) Características como inmediatez,
evolución y crecimiento continuos, nos llevan a un 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.
10
Modelo de proceso de la IngenierĂa Web (II)
11
Modelos de proceso de la Ingeniería Web (III)
Formulación: identificación de metas y objetivos
Planificación: estimación de costos, evaluación de riesgos y planificación temporal del proyecto Análisis: establecimiento de requisitos
Ingeniería: dos grupos de tareas paralelas,
Generación de páginas y pruebas
Técnicas (diseño arquitectónico, de navegación y de interfaz) No técnicas (diseño del contenido y producción)
El contenido se fusiona con los diseños arquitectónico, de navegación y de interfaz para elaborar páginas web ejecutables en HTML, JSP... Integración con el software intermedio (middleware) de componentes
Evaluación con el cliente: revisión de cada incremento y solicitud de cambios
12
Ingeniería(I) DISEÑO ARQUITECTONICO El diseño arquitectónico para para los sistemas
y aplicaciones basados en web se centra en la definición de la estructura global y en la aplicación de las configuraciones de diseño y plantillas constructivas para popularizar la estructura que se representara como parte de la webapp. 13
Ingeniería(II) DISEÑO DE NAVEGACIÓN Una ves establecida la arquitectura de una webapp y
establecidos sus componentes el diseñador deberá definir las rutas de navegación que permitan al usuario acceder al contenido y a los servicios de la webapp además definir la mecánica para la navegación.
14
Ingeniería(III) DISEÑO DE LA INTERFAZ Los conceptos, principios y métodos de diseño de
interfaz son aplicables al diseño de interface de usuario sin embargo las características especiales de los sistemas y aplicaciones web requieren otras consideraciones adicionales.
15
EJEMPLO DE APLICACIÓN WEB RESERVA DE MESA ONLINE
16
Se selecciona la fecha deseada en que se quiere reservar la mesa
17
*DespuĂŠs de seleccionar la fecha se selecciona el numero de personas y el ĂĄrea de donde necesita su mesa de fumador o no fumador.
18
Si la mesa es mayor a cinco personas la mesa serรก doble.
19
En la ubicaci贸n de no fumador se le asigna la mesa y quien reserva la mesa elige el lugar.
20
Ejemplo 2 Aplicaci贸n de llenar un formulario para alquiler de un auto.
21
Seleccionar fecha de alquiler.
22
Se selecciona el tipo de contrato para nuestro auto si lo necesitamos econ贸mico u o de otro tipo
23
A continuacion se muestra la descripci贸n del auto en este caso es econ贸mico.
24
La Web
“Navegar en la Web” se ha convertido en una actividad cotidiana, es evidente que Internet se popularizó. En la web se pueden encontrar sitios desde los más simples constituidos por un:
conjunto de páginas HTML vinculadas, buscadores de información, aulas virtuales, comercio electrónico hasta aquellos que permiten realizar transacciones bancarias con alta seguridad.
Definiciones
Para la Real Academia Española (RAE):
“Tecnología es un Conjunto de teorías y de técnicas que permiten el aprovechamiento práctico del conocimiento científico. Lenguaje propio de una ciencia o un arte”.
Ciencia es un “Conjunto de conocimientos obtenidos mediante la observación y el razonamiento, sistemáticamente estructurados y de los que se deducen principios y leyes generales”.
Ingeniería “Estudio y aplicación de las diversas ramas de la tecnología, por alguien que discurre con ingenio las trazas y modos de ejecutar algo”.
Paradigma es un “conjunto de prácticas que definen una disciplina científica durante un período específico de tiempo”. "Las sucesivas transiciones de un paradigma a otro vía alguna revolución, es el patrón de desarrollo usual de la ciencia madura
La Ingeniería Web (IWeb) aplica “sólidos principios científicos, de ingeniería y de administración, y enfoques disciplinados y sistemáticos para el desarrollo, despliegue y mantenimiento exitoso de sistemas y aplicaciones basados en Web de alta calidad”.