• No se han encontrado resultados

Desarrollo de un portal WEB para el I.S.E.P. Acomayo (Cusco) utilizando la metodología OOHDM

N/A
N/A
Protected

Academic year: 2020

Share "Desarrollo de un portal WEB para el I.S.E.P. Acomayo (Cusco) utilizando la metodología OOHDM"

Copied!
108
0
0

Texto completo

(1)

“N´

estor C´

aceres Vel´

asquez”

Facultad de Ingenier´ıa de Sistemas

Carrera Acad´

emico Profesional de Ingenier´ıa de

Sistemas

TESIS:

DESARROLLO DE UN PORTAL WEB PARA EL I.S.E.P. ACOMAYO (CUSCO) UTILIZANDO LA METODOLOG´IA OOHDM

TESIS

PRESENTADO POR EL BACHILLER:

Jos´e luis Vilca Condori

PARA OPTAR EL T´ITULO PROFESIONAL DE:

(2)

SISTEMAS

CARRERA ACAD´EMICO PROFESIONAL DE INGENIER´IA DE

SISTEMAS

—————————————————————————–

DESARROLLO DE UN PORTAL WEB PARA EL

I.S.E.P. ACOMAYO (CUSCO) UTILIZANDO LA

METODOLOG´

IA OOHDM

TESIS PRESENTADO POR EL BACHILLER

Jos´e luis Vilca Condori

PARA OPTAR EL T´ITULO PROFESIONAL DE:

INGENIERO DE SISTEMAS

APROBADO POR:

FECHA: Marzo 2015

PRESIDENTE:

PRIMER MIEMBRO:

SEGUNDO MIEMBRO:

(3)

Tabla de Contenido III

Lista de Tablas VI

Lista de Figuras VII

1. El problema, objetivos e hip´otesis 1

1.1. T´ıtulo . . . 1

1.2. Problema de Investigaci´on . . . 1

1.2.1. An´alisis de la Situaci´on Problem´atica . . . 1

1.3. Definici´on del Problema . . . 2

1.4. Planteamiento del Problema . . . 3

1.5. Formulaci´on del Problema . . . 3

1.5.1. Problema General . . . 3

1.5.2. Problemas Espec´ıficos . . . 3

1.6. Objetivos . . . 4

1.6.1. Objetivo General . . . 4

1.6.2. Objetivos Espec´ıficos . . . 4

1.7. Justificaci´on . . . 4

1.8. Hip´otesis y Variables . . . 5

1.8.1. Hip´otesis General . . . 5

1.8.2. Hip´otesis Espec´ıficas . . . 5

1.8.3. Variables . . . 5

1.8.4. Operacionalizaci´on de Variables . . . 6

1.9. Planteamiento Operacional . . . 6

1.9.1. T´ecnicas e Instrumentos de Verificaci´on . . . 6

2. Marco te´orico 7 2.1. Antecedentes . . . 7

2.2. Aplicaciones WEB . . . 11

(4)

2.3.2. Tipos de Requerimientos . . . 13

2.3.3. Actividades de la Ingenier´ıa de Requerimientos . . . . 17

2.3.4. An´alisis y Negociaci´on de Requisitos . . . 20

2.3.5. Especificaci´on de Requisitos . . . 22

2.3.6. Modelado del Sistema . . . 23

2.3.7. Validaci´on de Requisitos . . . 24

2.4. Hipermedia . . . 24

2.5. Ingenier´ıa web . . . 29

2.6. Categor´ıas web . . . 32

2.7. Metodolog´ıas web . . . 35

2.8. HDM- A Model-Based Approach to Hypertext Aplication Design 41 2.8.1. HDM . . . 42

2.9. RMM- Relationship Management Methogology . . . 47

2.9.1. Fases de RMM . . . 49

2.10. EORM- Enhanced Object Relationship Methodology . . . 53

2.10.1. Fases de EORM . . . 53

2.11. The MacWeb Hypermedia Development Enviroment . . . 58

2.11.1. Fases de Macweb . . . 58

2.12. OOHDM (Object Oriented Hypermedia Design Method) . . . 60

2.12.1. OOHDM . . . 63

2.12.2. Fases de OOHDM . . . 64

2.13. Marco Conceptual . . . 79

3. Metodolog´ıa de la Investigaci´on 83 3.1. M´etodo de Investigaci´on . . . 83

3.2. Dise˜no de la Investigaci´on . . . 83

3.2.1. Dise˜no de la Investigaci´on . . . 83

3.2.2. Tipo de Investigaci´on . . . 83

3.2.3. Nivel de Investigaci´on . . . 83

3.3. Poblaci´on y Muestra . . . 84

3.3.1. Poblaci´on . . . 84

3.3.2. Muestra . . . 84

3.4. T´ecnicas e instrumentos de investigaci´on . . . 84

3.5. Ubicaci´on Espacial . . . 84

3.6. Ubicaci´on Temporal . . . 84

(5)

4.2. M´odulo . . . 86

4.2.1. Ventana principal . . . 86

4.2.2. Requisitos Funcionales . . . 87

4.2.3. Requisitos no funcionales . . . 88

4.3. Modelamiento de la aplicaci´on usando el m´etodo OOHDM . . 89

Conclusiones 95

Recomendaciones 96

Referencias Bibliogr´aficas 98

Referencias Internet 101

(6)
(7)

2.1. Relaciones de los elementos de HDM . . . 44

2.2. Ejemplo de modelo HDM . . . 46

2.3. Primitivas del modelo RMDM . . . 49

2.4. Diagrama de slices para el ejemplo . . . 51

2.5. Ejemplo de modelo de an´alisis de EORM . . . 54

2.6. Ejemplo de modelo de dise˜no de EORM . . . 56

2.7. Definici´on de la clase enlace . . . 67

2.8. Ejemplo de diagrama de clases navegacionales . . . 69

2.9. Ejemplo de descripci´on de clases navegacionales . . . 70

2.10. Ejemplo de contexto navegacional . . . 71

2.11. Ejemplo de adv . . . 74

2.12. Ejemplo de diagrama de configuraci´on . . . 75

4.1. Dise˜no ADV principal de la aplicaci´on . . . 90

4.2. Interfaz Aplicaci´on . . . 90

4.3. Interfaz Aplicaci´on . . . 91

4.4. Interfaz Aplicaci´on . . . 92

4.5. Interfaz Aplicaci´on . . . 93

4.6. Interfaz Aplicaci´on . . . 93

4.7. Ingreso al Sistema . . . 94

(8)

El problema, objetivos e

hip´

otesis

1.1.

T´ıtulo

DESARROLLO DE UN PORTAL WEB PARA EL I.S.E.P.

ACOMA-YO (CUSCO) UTILIZANDO LA METODOLOG´IA OOHDM (M´etodo de

Dise˜no Hipermedia Orientado a Objetos).

1.2.

Problema de Investigaci´

on

1.2.1.

An´

alisis de la Situaci´

on Problem´

atica

En la red Internet se destaca la telara˜na de cobertura mundial, conocida

como WWW o web. Aqu´ı encajan todas las nuevas tecnolog´ıas como Java,

JavaScript y otros lenguajes, que ampl´ıan las posibilidades del web para la

interactividad, la distribuci´on de informaci´on y las comunicaciones. Es as´ı,

que en la red existen distintos mecanismos de acceso y distribuci´on de la

enorme cantidad de informaci´on disponible, siendo esta una principal fuente

(9)

de informaci´on.

Existe, por lo tanto, un inter´es creciente por parte de los estudiantes y

docentes en utilizar este recurso de WWW para as´ı poder compartir, difundir

y captar informaci´on haciendo que las instituciones brinden mejores servicios

a sus usuarios.

Ahora en el Instituto Superior Acomayo que est´a ubicado en el Cusco

existe el problema de que no utiliza el WWW o web, por lo que falta difusi´on

del mismo, y al ser esta una tecnolog´ıa ya muy difundida hace necesario el

desarrollo de un portal web que nos muestre la informaci´on necesaria del

instituto.

Es por esto que nos planteamos la siguiente interrogante: Mediante el

desarrollo de un portal web para el instituto Acomayo mejoraremos la calidad

educativa que presta a los estudiantes y docentes.

1.3.

Definici´

on del Problema

La realizaci´on de este trabajo es importante ya que con esto

introducire-mos al Instituto Superior Acomayo en el uso de las tecnolog´ıas de Internet

muy de moda en nuestra actualidad.

Con lo cual ser´a posible la mejora la calidad educativa que presta esta

instituci´on a sus estudiantes y docentes.

Por lo que es importante el desarrollo de este portal que utilice los recursos

(10)

OOHDM (M´etodo de Dise˜no Hipermedia Objeto Orientado) es un m´etodo

para el desarrollo de aplicaciones Web. Es uno de los primeros m´etodos para

separar de las dificultades que defin´ıan diferentes modelos que se separaban

en las siguientes fases del dise˜no: Requisitos, conceptual, navegaci´on, interfaz

abstracta y ejecuci´on. OOHDM, y su sucesor, SHDM (M´etodo de dise˜no

Sem´antica Hipermedia, utilizado por modelos de web Sem´antica) se apoyan

en c´odigo abierto, disponible libremente, ejecutado en diferentes ambientes.

Con el uso de este m´etodo podemos desarrollar una aplicaci´on necesaria

en esta instituci´on.

1.4.

Planteamiento del Problema

1.5.

Formulaci´

on del Problema

1.5.1.

Problema General

¿Como se analiza un portal WEB empleando OOHDM (M´etodo de Dise˜no

Hipermedia Orientado a Objetos) en el I.S.E.P. ACOMAYO (CUSCO)?

1.5.2.

Problemas Espec´ıficos

- ¿Analizar el portal WEB con otras aplicaciones para el I.S.E.P.

ACO-MAYO (CUSCO) ?

- ¿Que dise˜no es m´as accesible a la plataforma desde cualquier tipo de

terminal de usuario (ordenadores personales, dispositivos port´atiles, tel´efonos

(11)

1.6.

Objetivos

1.6.1.

Objetivo General

¿ Desarrollar la metodolog´ıa OOHDM, en el desarrollo del Portal WEB

de la I.S.E.P. ACOMAYO (CUSCO) ?

1.6.2.

Objetivos Espec´ıficos

Analizar el portal web con la metodologia OOHDM y otras aplicaci´ones

web.

Dise˜nar accesos a la plataforma para cualquier tipo de terminal de

usuario (ordenadores personales, dispositivos port´atiles, tel´efonos

inte-ligentes).

1.7.

Justificaci´

on

El uso de las nuevas tecnolog´ıas de comunicaci´on permite una

interac-ci´on m´as asertiva entre las instituciones y sus integrantes, en este caso se

beneficiar´ıa la Instituto superior ACOMAYO (CUSCO) de poseer un

v´ıncu-lo electr´onico, como lo es el portal web, dando una mayor accesibilidad de

datos actuales, y en algunos casos en tiempo real, referentes a las actividades

inherentes al instituto, fortaleci´endose e innovando la imagen del mismo en

la llamada era de la informaci´on, permitiendo un mayor alcance y presencia

(12)

La realizaci´on de este trabajo es importante ya que con esto

introducire-mos al Instituto Superior Acomayo en el uso de las tecnolog´ıas de internet

muy de moda en nuestra actualidad.

Con la cual es posible la mejorar el servicio que presta la instituci´on a

sus usuarios.

Por lo que es importante el desarrollo de este portal que utilice los recursos

que ofrece la web en el internet.

1.8.

Hip´

otesis y Variables

1.8.1.

Hip´

otesis General

- Con el Desarrollo de la metodolog´ıa OOHDM mejora el portal web.

1.8.2.

Hip´

otesis Espec´ıficas

- Edificar el analisis porque facilita el acceso al portal web .

- El uso de la metodolog´ıa OOHDM garantiza el acceso a la plataforma

desde cualquier tipo de terminal de usuario (ordenadores personales,

dispo-sitivos port´atiles, tel´efonos inteligentes).

1.8.3.

Variables

Variable Independiente

Desarrollo de un Portal WEB.

(13)

Metodolog´ıa OOHDM.

1.8.4.

Operacionalizaci´

on de Variables

Variable Dependiente

Metodologia OOHDM Indicadores

Fase conceptual Fase Navegacional Fase de Interfaz Abstracta

Fase de Implementaci´on

Variable Independiente

Portal WEB Indicadores

An´alisis Dise˜no Implementaci´on

Prueba

1.9.

Planteamiento Operacional

1.9.1.

ecnicas e Instrumentos de Verificaci´

on

Para el estudio de la variable antes mencionada as´ı como sus indicadores

(14)

Marco te´

orico

2.1.

Antecedentes

Dentro de los antecedentes del problema de la investigaci´on podemos citar

los siguientes, art´ıculos, tesis: Damos a conocer diferentes tesis de

investiga-ci´on que han sido realizados en diferentes universidades del mundo as´ı como:

Tesis para optar el grado de Ingeniero:

Tesis Locales

-IMPLEMENTACI ´ON DE APLICACIONES WEB PARA EL COLEGIO SAN ROM ´AN USANDO LA METODOLOG´IA(HDM)[A]

-UNIVERSIDAD ALAS PERUANAS JULIACA -ANDRES MAMANI QUISPE

-OCTUBRE 2011 Conclusi´on

- El desarrollo de la aplicaci´on que se presenta en este proyecto surge de la

necesidad de organizaci´on de los recursos de colegio san roman. Para ello, se

propuso el dise˜no de un repositorio de recursos de investigaci´on, centralizado

(15)

y coordinado donde los pudieran brindar en una base de datos del colegio de

ciudad de juliaca as´ı como realizar consultas, b´usquedas y descargas de los

mismos.

- Se opta por el desarrollo de una aplicaci´on que en un futuro pr´

oxi-mo se instalar´a en un ordenador del ´area que realiza las tareas de

servi-dor, concretamente en el servidor donde se aloja la p´agina web del ´area

(http://sanroman.edu.pe). Por tanto, esta aplicaci´on estar´a orientada a dar

mayor servicio y utilidad a la p´agina principal .

- Para abordar el dise˜no de la aplicaci´on propuesta, se han estudiado las

posibles soluciones software, enumerando y destacando en el segundo cap´ıtulo

de este documento aquellas que, por sus ventajas desde el punto de vista de la

arquitectura, se han elegido para realizar la aplicaci´on. En el mismo cap´ıtulo

tambi´en se aborda, desde el punto de vista del dise˜no de la aplicaci´on, los

motivos que han llevado al autor a elaborar una aplicaci´on desde el principio.

Entre los motivos enumerados destaca la necesidad de obtener el m´aximo

aprovechamiento de los recursos y servicios que ofrece el ordenador servidor

del ´area, as´ı como optimizar las funcionalidades requeridas en este proyecto.

Tesis Nacionales

-APLICACIONES WEB PARA LA EMPRESA TAURUS SAC USANDO LA METODOLOG´IA OOHDM)[B]

-UNIVERSIDAD ALAS PERUANAS SEDE TRUJILLO -NESTOR AQUISE LOPEZ

(16)

Conclusi´on

- Contar con una metodolog´ıa adecuada a la hora de desarrollar una

aplicaci´on Web, ayudar´ıa a disminuir los problemas de dise˜no que han venido

presentando este tipo de aplicaciones, reduciendo sus costos de desarrollo e

implementaci´on, haciendo que los objetivos planteados para el proyecto se

cumplan de manera r´apida y efectiva.

- El desarrollo de aplicaciones efectivas permite disminuir el rechazo que,

normalmente, tienen los usuarios a la hora de aceptar una nueva aplicaci´on.

En el caso de aplicaciones Web, este rechazo puede ser m´as evidente, ya

que es una tecnolog´ıa relativamente nueva y con caracter´ısticas de uso y

navegaci´on totalmente diferentes a las aplicaciones tradicionales, lo que hace

que la utilizaci´on de una metodolog´ıa de desarrollo adecuada para llevar a

cabo una aplicaci´on Web sea mucho m´as relevante.

- Hay que destacar que cada vez son m´as comunes las aplicaciones Web

dentro de las organizaciones, inclusive muchas aplicaciones tradicionales han

sido migradas a la tecnolog´ıa Web, por las bondades que esta ofrece. Se

prev´e que a mediano plazo las aplicaciones Web desplacen a las aplicaciones

tradicionales, una muestra de esto son compa˜n´ıas como Microsoft y Google,

que se encuentran trabajando en el primer sistema operativo Web, lo que

producir´a una nueva era en el desarrollo de software, en donde la ingenier´ıa

(17)

- Por lo expuesto, es fundamental que se realicen investigaciones

relacio-nadas con el ´area de la ingenier´ıa Web, que aporten conocimientos y

expe-riencias, con la finalidad de contar, cada vez m´as, con una s´olida base te´orica

que ayude a dise˜nar y desarrollar aplicaciones Web, y que faciliten la tarea de

los equipos de trabajo en la transici´on de la migraci´on de software tradicional

al ambiente Web.

Tesis Internacionales

-METODOLOG´IA DIRIGIDA POR MODELOS PARA EL DI-SE ˜NO DE FUNCIONALIDAD VOL ´ATIL EN APLICACIONES WEB)[C]

-UNIVERSIDAD NACIONAL DE LA PLATA. ARGENTINA -NESTOR AQUISE LOPEZ

-AGOSTO 2012 Conclusi´on

- Para dar una soluci´on a este problema de funcionalidad vol´atil en

apli-caciones Web se ha propuesto un enfoque modular dirigido por modelos que

puede ser aplicado a casi cualquier metodolog´ıa de ingenier´ıa Web; en este

caso se utiliz´o OOHDM. El eje de la tesis es el dise˜no sim´etrico de

cual-quier funcionalidad vol´atil por m´as simple que sea. Este concepto se propaga

a las diferentes modelos de una aplicaci´on Web (conceptual, navegacional

e interfaz) y para ello se definieron herramientas conceptuales que

permi-ten el adecuado modelado de los requerimientos vol´atiles de forma sim´etrica,

(18)

- Siguiendo el enfoque, las funcionalidades vol´atiles son detectadas en

las etapas tempranas del desarrollo de Software para identificar conflictos

con otros requerimientos corre y proponer soluciones de forma autom´atica o

semi-autom´atica. Es un novedoso aporte que mediante la formalizaci´on de

re-querimientos de interacci´on utilizando WebSpec se pueden detectar conflictos

(de estructura y de navegaci´on) a nivel sint´actico y sem´antico. Para detectar

conflictos e inconsistencias los requerimientos de en aplicaciones, cada nuevo

requerimiento vol´atil es validado contra los requerimientos consolidados (que

ya demostraron mantener la consistencia).

2.2.

Aplicaciones WEB

Las aplicaciones hipermedia han evolucionado en los ´ultimos a˜nos y se

han concentrado mayormente en la web. Las antiguas aplicaciones

distribui-das en cd s dieron lugar a aplicaciones din´amicas, de constante actualizaci´on

e incluso personalizables, capaces de adaptarse a los tipos de usuarios y en

ca-sos avanzados, a cada usuario en particular. Estas caracter´ısticas encuentran

el medio ideal en la web, ya que de otra forma ser´ıa costoso su

manteni-miento y evoluci´on. La complejidad del desarrollo ocurre a diferentes niveles:

dominios de aplicaci´on sofisticados (financieros, m´edicos, geogr´aficos, etc.);

la necesidad de proveer acceso de navegaci´on simple a grandes cantidades de

datos multimedia les, y por ´ultimo la aparici´on de nuevos dispositivos para

los cuales se deben construir interfaces web f´aciles de usar. Esta complejidad

(19)

de los asuntos de modelizaci´on en forma clara y modular. [1] La metodolog´ıa

OOHDM, presentada en la pr´oxima secci´on, ha sido utilizada para dise˜nar

diferentes tipos de aplicaciones hipermedia como galer´ıas interactivas,

pre-sentaciones multimedia y como veremos en este trabajo, aplicaciones web.

El ´exito de esta metodolog´ıa es la clara identificaci´on de los tres diferentes

niveles de dise˜no en forma.

2.3.

Ingenier´ıa de Requerimientos

Uno de los puntos importantes de la Ingenier´ıa del Software es la

especi-ficaci´on de Requisitos o Ingenier´ıa de requerimientos el cu´al es el proceso de

descubrir, analizar, documentar y verificar servicios y restricciones. La

Inge-nier´ıa de Requerimientos es base para el proceso de desarrollo de software,

por ello se defini´o lo que es un requerimiento. La meta de la ingenier´ıa de

requerimientos (IR) es entregar una especificaci´on de requisitos de software

correcta y completa. Otros conceptos de ingenier´ıa de requerimientos que

se encontraron son: Ingenier´ıa de Requerimientos ayuda a los ingenieros de

software a entender mejor el problema en cuya soluci´on trabajar´an. Incluye

el conjunto de tareas que conducen a comprender cu´al ser´a el impacto del

software sobre el negocio, qu´e es lo que el cliente quiere y c´omo interactuar´an

los usuarios finales con el software. La ingenier´ıa de requerimientos es el

pro-ceso de desarrollar una especificaci´on de software. [6] Las especificaciones

pretenden comunicar las necesidades del sistema del cliente a los

(20)

se utiliz´o para definir todas las actividades involucradas en el

descubrimien-to, documentaci´on y mantenimiento de los requerimientos para el sistema

de Control Presupuestal, donde es muy importante tomar en cuenta que el

aporte de la IR viene a ayudar a determinar la viabilidad de llevar a cabo

el software (si es factible llevarlo a cabo o no),pasando posteriormente por

un sub proceso de obtenci´on y an´alisis de requerimientos, su especificaci´on

formal, para finalizar con el sub proceso de validaci´on donde se verifica que

los requerimientos definen el sistema que el cliente requiere. Independiente

de la implementaci´on.

2.3.1.

Requerimientos

El t´ermino requerimiento no se utiliza de una forma constante en la

pro-ducci´on de software. En algunos casos, un requerimiento es simplemente una

declaraci´on abstracta de alto nivel de un servicio que debe proporcionar el

sistema o una restricci´on de ´este. En este caso se utiliz´o el t´ermino

reque-rimiento para determinar cu´ales ser´ıan las funciones que el sistema debe

realizar y satisfacer las necesidades del cliente.

2.3.2.

Tipos de Requerimientos

Algunos de los problemas que surgen durante el proceso de ingenier´ıa de

requerimientos son resultado de no haber hecho una clara separaci´on entre los

diferentes niveles de descripci´on de los requisitos. Aqu´ı se distinguieron con

(21)

abstractos de alto nivel, del sistema para designar la descripci´on detallada de

lo que el sistema debe hacer. Los requerimientos se dividen en dos categor´ıas:

requerimientos de usuario y requerimientos del sistema.

Requerimientos de Usuario

Para la declaraci´on de las necesidades del cliente dentro del documento

de requerimientos se utilizaron los requerimientos del usuario, ya que estos

permitieron al cliente comprender y visualizar el alcance del sistema en un

lenguaje com´un.

Requerimientos del Sistema

Los requerimientos del sistema son versiones extendidas de los

requeri-mientos que son utilizados por los ingenieros de software como punto de

par-tida para el dise˜no del sistema. Agregan detalle y explican como el sistema

debe proporcionar los requerimientos del usuario. Pueden ser utilizados como

parte del contrato para la implementaci´on del sistema y por lo tanto, deben

ser una especificaci´on completa y consistente del sistema entero. A menudo

se utiliza el lenguaje natural para redactar, adem´as de los requerimientos

del usuario, las especificaciones de requerimientos del sistema. Sin embargo,

debido a que los requerimientos del sistema son m´as detallados que los

re-querimientos del usuario, las especificaciones en lenguaje natural pueden ser

confusas y dif´ıciles de entender. Los requerimientos de sistema de software

se clasificaron en funcionales y no funcionales, o como requerimientos del

(22)

1. Requerimientos Funcionales.- Son declaraciones de los servicios que debe proporcionar el sistema, de la manera en que este debe reaccionar a

entradas particulares y de c´omo se debe comportar en situaciones

particula-res. En algunos casos, los requerimientos funcionales de los sistemas tambi´en

pueden declarar expl´ıcitamente lo que el sistema debe hacer.

2. Requerimientos no Funcionales.-Son restricciones de los servicios o funciones ofrecidos por el sistema. Incluyen restricciones de tiempo, sobre el

proceso desarrollo y est´andares. Normalmente los requerimientos funcionales

apenas se aplican a caracter´ısticas o servicios individuales del sistema.

3. Requerimientos del Dominio.- Son requerimientos que provienen del dominio de aplicaci´on del sistema y que reflejan las caracter´ısticas y

restricciones de ese dominio. Pueden ser funcionales o no funcionales.

Caracter´ısticas de un Requerimiento

Los requerimientos formulados deb´ıan satisfacer varias caracter´ısticas. Si

no lo hac´ıan, ten´ıan que ser reformulados hasta hacerlo. Para ello un

reque-rimiento debe ser:

- Necesario: Lo que pida un requerimiento debe ser necesario para el producto.

- No ambiguo:El texto debe ser claro, preciso y tener una ´unica inter-pretaci´on posible.

(23)

referenciar los aspectos importantes

- Consistente: Ning´un requerimiento debe entrar en conflicto con otro requerimiento diferente, ni con parte de otro. Asimismo, el lenguaje empleado

entre los distintos requerimientos debe ser consistente tambi´en.

- Completo: Los requerimientos deben contener en s´ı mismos toda la informaci´on necesaria, y no remitir a otras fuentes externas que los expliquen

con m´as detalle.

- Alcanzable:Un requerimiento debe ser un objetivo realista, posible de ser alcanzado con el dinero, el tiempo y los recursos disponibles.

- Verificable:Se debe poder verificar con absoluta certeza, si el requeri-miento fue satisfecho o no. Esta verificaci´on puede lograrse mediante

inspec-ci´on, an´alisis,demostraci´on o testeo.[4]

Dificultades para Definir los Requerimientos

- Durante la etapa de especificaci´on de requerimientos (IR) se presentaron

inconvenientes los cuales fueron importantes de identificar, a continuaci´on se

presenta un listado de los problemas m´as comunes que se dieron durante este

proceso:

- Los requerimientos no eran obvios y proven´ıan de varias fuentes, ya que

se trataba de un ´area financiera.

- Fueron dif´ıciles de expresar en palabras (el lenguaje es confuso).

- La cantidad de requerimientos del proyecto fueron un poco dif´ıcil de

(24)

- El usuario no pod´ıa explicar lo que hace durante el proceso de control

de presupuesto. Tend´ıa a recordar lo excepcional y olvidar lo rutinario

Los usuarios ten´ıan distinto vocabulario que los analistas.Para resolver

estos inconvenientes, se utiliz´o la Ingenier´ıa de Requerimientos, ya que aqu´ı se

incluyen algunas t´ecnicas de obtenci´on de requisitos que ayudaron en la etapa

de Especificaci´on de Requerimientos

2.3.3.

Actividades de la Ingenier´ıa de Requerimientos

Se identific´o que existen cinco actividades b´asicas que se tienen que llevar

a cabo para completar el proceso de software. Estas actividades ayudaron

a reconocer la importancia que tiene, para el desarrollo de un proyecto de

software, realizar una especificaci´on y administraci´on adecuada de los

reque-rimientos de los clientes o usuarios. Las cinco actividades identificadas son:

Extracci´on de Requisitos, An´alisis y Negociaci´on de Requisitos,

Especifica-ci´on de Requisitos, Modelado del Sistema, Validaci´on y Gesti´on de

Requisi-tos, ser´an explicadas a continuaci´on cada una de ellas. O no funcionales.

Extracci´on de Requisitos

En principio, parece bastante simple -preguntar al cliente, a los usuarios

y a los que est´an involucrados en los objetivos del sistema o producto y sean

expertos, investigar c´omo el sistema o producto se ajusta a las necesidades

del negocio, y finalmente, c´omo el sistema o producto va a ser utilizado en

el d´ıa a d´ıa

(25)

problemas que ayudan a comprender por qu´e la obtenci´on de requisitos es

costosa.

Problemas de alcance. El l´ımite del sistema est´a mal definido o los

deta-lles t´ecnicos innecesarios, que han sido aportados por los clientes/usuarios,

pueden confundir m´as que clarificar los objetivos del sistema.

- Problemas de comprensi´on. Los clientes/usuarios no est´an

completa-mente seguros de lo que necesitan, tienen una pobre compresi´on de las

capa-cidades y limitaciones

de su entorno de computaci´on, no existe un total entendimiento del

do-minio del problema, existen dificultades para comunicar las necesidades al

ingeniero del sistema, la omisi´on de informaci´on o por considerar que es

ob-via, especificaci´on de requisitos que est´an en conflicto con las necesidades de

otros clientes/usuarios, o especificar requisitos ambiguos o poco estables.

- Problemas de volatilidad. Los requisitos cambian con el tiempo.Para

ayudar a solucionar estos problemas, los analistas del sistema se pueden

apro-ximar de manera organizada a trav´es de reuniones con el cliente para definir

los requisitos. Un conjunto de actuaciones para la obtenci´on de requisitos,

que est´an descritos en las tareas siguientes:

- Valorar el impacto en el negocio y la viabilidad t´ecnica del sistema

propuesto.

- Identificar las personas que ayudar´an a especificar requisitos y contrastar

(26)

- Definir el entorno t´ecnico (arquitectura de computaci´on, sistema

opera-tivo,necesidades de telecomunicaciones) en el sistema o producto a desarrollar

e integrar.

Identificar restricciones de dominio (caracter´ısticas espec´ıficas del entorno

de negocio en el dominio de la aplicaci´on) que limiten la funcionalidad y

rendimiento del sistema o producto a construir.

Definir uno o m´as m´etodos de obtenci´on de requisitos (entrevistas, grupos

de trabajo,equipos de discusi´on).

- Solicitar la participaci´on de muchas personas para que los requisitos se

definan desde diferentes puntos de vista, asegurarse de identificar lo

funda-mental de cada requisito registrado.

- Identificar requisitos ambiguos como candidatos para el prototipado, y

crear escenarios de uso

para ayudar a los clientes/usuarios a identificar mejor los

requisitosfun-damentales.El resultado alcanzado como consecuencia de la identificaci´on de

requisitos puede variar dependiendo del tama˜no del sistema o producto a

construir. Para grandes sistemas, el producto obtenido debe incluir:

- Una relaci´on de necesidades y caracter´ısticas.

Un informe conciso del alcance del sistema o producto.

- Una lista de clientes, usuarios y otros intervinientes que deben participar

en la actividad de obtenci´on de requisitos.

- Una descripci´on del entorno t´ecnico del sistema.

(27)

y las restricciones del dominio aplicables a cada uno.

Un conjunto de escenarios que permiten profundizar en el uso del sistema

o producto bajo diferentes condiciones operativas, y cualquier prototipo

desa-rrollado para definir mejor los requisitos.Cada uno de los productos obtenidos

debe ser revisado por las personas que hayan participado en la obtenci´on de

los requisitos. Es importante, que la extracci´on de los requisitos sea efectiva,

ya que la aceptaci´on del sistema depender´a de cu´an bien ´este satisfaga las

necesidades del cliente.

2.3.4.

An´

alisis y Negociaci´

on de Requisitos

Sobre la base de la extracci´on realizada anteriormente, comienza esta fase

la cual se enfoc´o en descubrir los problemas con los requerimientos del

siste-ma identificados.Usualmente se hace un an´alisis luego de haber producido un

bosquejo inicial del documento de requerimientos; en esta etapa se leyeron

los requerimientos, se conceptuaron,se investigaron, se intercambiaron ideas

con el resto del equipo, se resaltaron los problemas,se buscaron alternativas

y soluciones, y luego se fijaron reuniones con el cliente para discutir los

re-querimientos.Una vez recopilados los requisitos, se agruparon por categor´ıas

y se organizaron en subconjuntos, se estudi´o cada requisito en relaci´on con

el resto, se examinaron los requisitos en su consistencia, completitud y

am-big¨uedad (Caracter´ısticas de un requerimiento), y se clasificaron en base a

(28)

Al iniciarse la actividad del an´alisis de requisitos se plantearon las

si-guientes cuestiones:

¿Cada requisito es consistente con los objetivos generales del sistema/producto?

¿Tienen todos los requisitos especificados el nivel adecuado de

abstrac-ci´on? Es decir, ¿algunos requisitos tienen un nivel de detalle t´ecnico

inapro-piado en esta etapa?

¿El requisito es necesario o representa una caracter´ıstica a˜nadida que

puede no ser esencial a la finalidad del sistema?

¿Cada requisito est´a delimitado y sin ambig¨uedad?

Cada requisito tiene procedencia. Es decir, ¿existe un origen (general o

espec´ıfico)conocido para cada requisito?

¿Existen requisitos incompatibles con otros requisitos?

¿Es posible lograr cada requisito en el entorno t´ecnico donde se

inte-grar´a el sistema o producto?

¿Se puede probar el requisito una vez implementado?

Es corriente en clientes y usuarios solicitar m´as de lo que puede

realizar-se,asumiendo recursos de negocio limitados. Tambi´en es relativamente com´un

en clientes y usuarios el proponer requisitos contradictorios, argumentando

que su versi´on es esencial por necesidades especiales. Si los clientes no

pue-den facilitar los requisitos, el riesgo de errar es muy alto. Los analistas del

sistema pueden resolver estos conflictos a trav´es de un proceso de

negocia-ci´on. Los clientes, usuarios y el resto de los involucrados discuten los posibles

(29)

requisito son identificados y analizados. Se efect´uan estimaciones del

esfuer-zo de desarrollo que se utilizan para valorar el impacto de cada requisito en

el coste del proyecto y en el plazo de entrega. Utilizando un procedimiento

iterativo, se ir´an eliminando requisitos, se ir´an combinando y/o modificando

para conseguir satisfacer los objetivos planteados

2.3.5.

Especificaci´

on de Requisitos

En esta fase se documentaron los requerimientos acordados con el

clien-te. En el contexto de un sistema basado en computadoras (y software), el

t´ermino especificaci´on significa distintas cosas para diferentes personas. Una

especificaci´on puede ser un documento escrito, un modelo gr´afico, un modelo

matem´atico formal, una colecci´on de escenarios de uso, un prototipo o una

combinaci´on de lo anteriormente citado.Algunos sugieren que debe

desarro-llarse una plantilla y usarse en la especificaci´on del sistema, argumentando

que as´ı se consiguen los requisitos para que sean presentados de una forma

m´as consistente y m´as comprensible.Para este caso se considero como mejor

alternativa un documento escrito(Documento de Especificaci´on de

Requisi-tos), combinado con descripciones en lenguaje natural y modelos gr´aficos.La

Especificaci´on del Sistema es el producto final sobre los requisitos del

siste-ma obtenido por el ingeniero. Sirve como fundamento para la ingenier´ıa del

hardware, ingenier´ıa del software, la ingenier´ıa de bases de datos y la

inge-nier´ıa humana.La Especificaci´on de Requisitos ayud´o a describir la funci´on

(30)

desarrollo. En s´ı, la especificaci´on del sistema describe la informaci´on (datos

y control) que entra y sale del sistema.

2.3.6.

Modelado del Sistema

Al terminar de especificar el sistema, se model´o cada uno de los

requi-sitos, para un mejor entendimiento del proceso de Control de Presupuesto.

Considere por un momento que a usted se le ha requerido para especificar

los requisitos para la construcci´on de una cocina. Se conocen las

dimensio-nes del lugar, la localizaci´on de las puertas y ventanas y el espacio de pared

disponible. Debe especificar todos los armarios y electrodom´esticos e

indi-car d´onde colocarlos.¿Ser´a una especificaci´on v´alida? La respuesta es obvia.

Para especificar completamente lo que se va a desarrollar, se necesita un

modelo de la cocina con toda la informaci´on necesaria, esto es, un

antepro-yecto o una representaci´on en tres dimensiones que muestre las posiciones

de los armarios y electrodom´esticos, y sus relaciones.Con el modelo ser´a

re-lativamente f´acil asegurar la eficiencia del trabajo (un requisito de todas las

cocinas), la est´etica visual de la sala (es un requisito personal, aunque muy

importante).Se construyeron modelos del sistema por la misma raz´on que se

desarrollo para una cocina un anteproyecto o una representaci´on en 3D. Fue

importante evaluar los componentes que integrar´ıan el sistema y sus

relacio-nes entre s´ı; determinar c´omo est´an reflejados los requisitos, y valorar como

(31)

2.3.7.

Validaci´

on de Requisitos

La validaci´on se considera por muchos autores como la actividad final de

la IR. Su objetivo es, ratificar los requerimientos, es decir, se verifican todos

los requerimientos que aparecen en el documento especificado (Documento

de Requerimientos) para asegurarse que se represent´o una descripci´on, por

lo menos, aceptable del sistema que se desea implementar. Esto implica que

se verifique que los requerimientos fueran consistentes y estuvieran

comple-tos.Es necesario recalcar que no existe un proceso ´unico que sea v´alido de

aplicar en todas las organizaciones. Cada organizaci´on desarrolla su propio

proceso de acuerdo al tipo de producto que se est´a desarrollando, a la

cul-tura organizacional, y al nivel de experiencia y habilidad de las personas

involucradas en la ingenier´ıa de requerimientos.

2.4.

Hipermedia

El t´ermino HIPERMEDIA, combinaci´on de los conceptos HIPERtexto

y multiMEDIA, hace referencia a una tecnolog´ıa de construcci´on de

(hi-per)documentos que permite a los lectores encontrar facilmente la

informa-ci´on que realmente necesitan, de la manera que ellos decidan, a trav´es de

en-laces establecidos por el autor entre los diferentes elementos de informaci´on

multimedia (texto, sonido, imagen, v´ıdeo, etc.) que conforman el documento.

Aunque en la literatura se suelen utilizar indistintamente ambos, el t´ermino

(32)

de informaci´on contienen ´unicamente texto. Tambi´en suele confundirse con el

t´ermino Multimedia, cuando ´este, en realidad, hace referencia a sistemas que

contienen y presentan texto, im´agenes, sonido, video, etc. pero sin enlaces

entre estos elementos de informaci´on.

Para ilustrar las posibilidades de esta tecnolog´ıa, se podr´ıa imaginar

co-mo ejemplo de documento hipermedia o hiperdocumento, un posible informe

policial sobre un accidente de tr´afico que, adem´as del texto describiendo el

si-niestro, incorpore fotograf´ıas digitalizadas tomadas por los agentes, la versi´on

grabada de la propia voz o en v´ıdeo de los testigos, im´agenes .escaneadas”de

los informes m´edicos, datos geoespaciales del lugar donde se produjo el

si-niestro, etc. El documento deber´ıa, por tanto, incluir enlaces entre estos

elementos que establezcan las posibles v´ıas de acceso o de navegaci´on por

la informaci´on. En este ejemplo de tr´afico podr´ıa existir un enlace a una

se-cuencia de v´ıdeo donde un testigo da explicaciones, desde el lugar del texto

del informe en el que aparece el nombre de esa persona.

Un hiperdocumento se compone, en principio, de dos tipos de elementos:

por un lado estar´ıan los nodos, o ¸contenedores”de la informaci´on

multime-dia; y por otro los enlaces, que interconectan los nodos permitiendo otras

alternativas de navegaci´on por la informaci´on diferentes del cl´asico acceso

secuencial ”desde la primera a la ´ultima l´ınea”. Existe, no obstante, un

ter-cer componente fundamental denominado ancla. Se trata de un mecanismo

para se˜nalar puntos incluidos en el interior de los nodos que sirven de origen

(33)

con contenido textual puede haber palabras o frases marcadas que al ser

se-leccionadas por el usuario (p. ej. con el rat´on) activen un enlace originando el

acceso al contenido de otro nodo (o a otra parte del mismo nodo). Este nodo

destino podr´ıa contener informaci´on multimedia de tipo secuencia de v´ıdeo,

con lo que el ancla deber´ıa marcar el fotograma o el instante de la secuencia

de v´ıdeo que deber´ıa comenzar a visualizarse al activarse el enlace.

Los Sistemas Hipermediales son los entornos que ofrecen a los usuarios

todos los mecanismos para la creaci´on, manipulaci´on y consulta de

hiperdo-cumentos. As´ı, respecto a su interface con los usuarios, proporcionan browsers

o visualizadores para la navegaci´on y, opcionalmente, visiones de mapas

ge-nerales del hiperespacio del documento para que los usuarios conozcan su

situaci´on en cada momento. Tambi´en incluyen herramientas de autor para el

mantenimiento de los contenidos de los nodos y de la estructura de enlaces.

En este caso se deber´an tener en cuenta todas las posibilidades multimedia,

por lo que har´an falta editores, no solo de texto, sino tambi´en de sonido, de

im´agenes, etc. y mecanismos de conexi´on entre todos estos tipos de

informa-ci´on. Adem´as de las facilidades anteriores que son percibidas por los usuarios

del sistema y, teniendo en cuenta que la informaci´on de un documento

hiper-media (tanto la de los nodos como la relativa a los enlaces) ser´a registrada

f´ısicamente en un sistema de ficheros o en una base de datos, deber´an existir

tambi´en mecanismos que adapten dicha informaci´on a las caracter´ısiticas del

sistema de almacenamiento utilizado, as´ı como los correspondientes

(34)

Debido a la complejidad evidente de los documentos hipermedia, desde

los or´ıgenes de esta tecnolog´ıa se ha intentado establecer un modelo

univer-sal de hiperdocumento que permita su percepci´on desde diferentes niveles de

abstracci´on para facilitar el desarrollo de est´andares de interface entre niveles

que garanticen la portabilidad de los documentos generados. Uno de los

mo-delos m´as conocidos es el denominado Dexter Hypertext Reference Model,

presentado en 1990 para Hipertextos y mejorado en 1993 por el Amsterdam

Hypermedia Model para recoger aspectos espec´ıficos de la informaci´on

mul-timedia. El modelo Dexter considera tres niveles para un hiperdocumento:

1.- Nivel de ejecuci´on (Run-time Layer): Se trata del nivel de mayor

abs-tracci´on, que se superpone a los restantes niveles. En ´el se describe el

hi-perdocumento tal y como lo perciben los usuarios, como una serie de nodos

con contenido que aparecen en pantalla y desde los que se puede acceder a

otros nodos a trav´es de enlaces. Este nivel tambi´en incluye las

caracter´ısti-cas de la Interface Gr´afica de Usuario (IGU) utilizada en la visualizaci´on del

hiperdocumento.

2.- Nivel de almacenamiento (Storage Layer): En este nivel intermedio se

ver´ıa el documento como una base de datos en la que se almacena toda la

informaci´on en entidades o ¸componentes”(normalmente coincidiendo con los

nodos) relacionados entre s´ı.

3.- Nivel de contenido (Within-Component Layer): Este nivel se concentra

en la estructura de la informaci´on en el interior de los componentes de la

(35)

estructuraci´on de documentos como ODA o SGML.

De todo lo anterior se evidencian algunas consideraciones importantes a

tener en cuenta respecto a la tecnolog´ıa hipermedia que pueden aconsejar

la incorporaci´on del paradigma de la orientaci´on a objetos en los diferentes

aspectos de dicha tecnolog´ıa:

- La informaci´on que se maneja en los sistemas hipermediales es muy

he-terogenea, lo cual es evidente debido al componente multimedia en la

tecno-log´ıa. - Los hiperdocumentos se estructuran en bloques documentales (nodos)

aut´onomos a los que se accede a trav´es de enlaces. - Se va a requerir un gran

espacio de almacenamiento para la informaci´on. - Se pueden crear

hiperespa-cios de navegaci´on muy complejos debido a las posibilidades de interconexi´on

de nodos - El usuario es el elemento m´as importante de un sistema

hiper-medial. De tal forma que si se le ignora durante el proceso de dise˜no del

hiperdocumento es muy probable nunca lo utilice si no satisface plenamente

sus necesidades de informaci´on. Tambi´en hay que cuidar especialmente la

interface del sistema con el usuario para hacerlo atractivo.

- Las metodolog´ıas tradicionales de ingenier´ıade software, o las

metodo-log´ıas para sistemas de desarrollo deinformaci´on, no contienen una buena

abstracci´on capaz de facilitar la tarea de especificar aplicaciones hipermedia.

El tama˜no, la complejidad y el n´umero de aplicaciones crecen en forma

ace-lerada en la actualidad, por lo cual una metodolog´ıa de dise˜no sistem´atica es

necesaria para disminuir la complejidad y admitir evoluci´on y reusabilidad.

(36)

del paradigma de la navegaci´on de sitios web, mientras ejecuta transacciones

sobre bases de informaci´on, es una tarea muy dif´ıcil de lograr. En primer

lugar, la navegaci´on posee algunos problemas. Una estructura de navegaci´on

robusta es unade las claves del ´exito en las aplicaciones hipermedia. Si el

usuario entiende d´onde puede ir y c´omo llegar al lugar deseado, es una buena

se˜nal de que la aplicaci´on ha sido bien dise˜nada. Construir la interfaz de una

aplicaci´on web es tambi´en una tarea compleja; no s´olo se necesita especificar

cu´ales son los objetos de la interfaz que deber´ıan ser implementados, sino

tambi´en la manera en la cual estos objetos interactuar´an con el resto de la

aplicaci´on. En hipermedia existen requerimientos que deben ser satisfechos

en un entorno de desarrollo unificado . Por un lado, la navegaci´on y el

com-portamiento funcional de la aplicaci´on deber´ıan ser integrados. Por otro lado,

durante el proceso de dise˜no se deber´ıa poder desacoplar las decisiones de

dise˜no relacionadas con la estructura navegacional de la aplicaci´on, de

aque-llas relacionadas con el modelo del dominio. OOHDM propone el desarrollo

de aplicaciones hipermedia a trav´es de un proceso compuesto por cuatro

eta-pas: dise˜no conceptual, dise˜no navegacional, dise˜no de interfaces abstractas

e implementaci´on.

2.5.

Ingenier´ıa web

La ingenier´ıa web es la aplicaci´on de metodolog´ıas sistem´aticas,

discipli-nadas y cuantificables al desarrollo eficiente, operaci´on y evoluci´on de

(37)

crecimiento desenfrenado que est´a teniendo la Web est´a ocasionando un

im-pacto en la sociedad y el nuevo manejo que se le est´a dando a la informaci´on

en las diferentes ´areas en que se presenta ha hecho que las personas tiendan

a realizar todas sus actividades por esta v´ıa. Desde que esto empez´o a

suce-der el Internet se volvi´o m´as que una diversi´on y empez´o a ser tomado m´as

en serio, ya que el aumento de publicaciones y de informaciones hizo que la

Web se volviera como un desaf´ıo para los (Ingenier´ıa del software) ingenieros

del software, a ra´ız de esto se crearon enfoques disciplinados, sistem´aticos

y metodolog´ıas donde tuvieron en cuenta aspectos espec´ıficos de este nuevo

medio.

Uno de los aspectos m´as tenidos en cuenta, en el desarrollo de sitios web es

sin duda alguna el dise˜no gr´afico y la organizaci´on estructural del contenido.

En la actualidad la web est´a sufriendo grandes cambios, que han obligado a

expertos en el tema a utilizar herramientas y t´ecnicas basadas en la ingenier´ıa

del software, para poder garantizar el buen funcionamiento y administraci´on

de los sitios web. ´ Para garantizar el buen funcionamiento y mantenimiento

de los sitios web, este debe contar con ciertos atributos y caracter´ısticas que

en conjunto forman un concepto muy importante, para alcanzar el ´exito en

cualquier organizaci´on, herramienta, y todo aquello que se pueda considerar

como servicio. Dicho concepto es la calidad, que con atributos como,

usabili-dad, navegabiliusabili-dad, seguriusabili-dad, mantenibiliusabili-dad, entre otros, hace posible por

un lado la eficiencia del artefacto web y por ende la satisfacci´on del usuario

(38)

programar y controlar, es decir la calidad no podr´a ser agregada a un

arte-facto web o a cualquier otro producto, al final del proceso de desarrollo, si no

que se deber´a implementar durante todo el ciclo de vida del desarrollo. Para

finalizar el resultado de un proceso de calidad, podr´ıa arrojar

recomenda-ciones para introducir mejoras, y la decisi´on final podr´ıa consistir en lanzar

una nueva versi´on del sitio web o en modificar algunos atributos ausentes o

pobremente dise˜nados. Cabe destacar que la ingenier´ıa de la web hace una

diferencia entre un webSite y un aplicativo, ya que la ingenier´ıa de la web

no se dedica a la construcci´on de sitios web si no a la construcci´on de

aplica-tivos web, la principal caracter´ıstica que los distingue (aplicaaplica-tivos de sitios

web) es que los sitios web son sitios en la web en donde se publica contenido

generalmente est´atico o un muy bajo nivel de interactividad con el usuario,

mientras que los aplicativos son lugares con alto contenido de interactividad

y funcionalidades que bien podr´ıan ser de un software convencional, el

apli-cativo web m´as sencillo seria uno que contenga formularios y subiendo de

nivel encontramos los que realizas conexi´on con bases de datos remotas, y

administradores de contenidos entre otras. Entonces la ingenier´ıa de la Web

es la aplicaci´on de metodolog´ıas sistem´aticas, disciplinadas y cuantificables

al desarrollo eficiente, operaci´on y evoluci´on de aplicaciones de alta calidad

en la World Wide Web. En este sentido, la ingenier´ıa de la Web hace

re-ferencia a las metodolog´ıas, t´ecnicas y herramientas que se utilizan en el

desarrollo de aplicaciones Web complejas y de gran dimensi´on en las que se

(39)

aplicaciones.

2.6.

Categor´ıas web

Los sitios web pueden ser categorizados de la siguiente forma:

- S´olo est´atico que se enfoca en la organizaci´on de la estructura y el

contenido, en la forma como se va a presentar la informaci´on y que sea f´acil

de manejar para cualquier usuario, pero debe tener en cuenta la eficiencia y

la confiabilidad.

- Sitio est´atico con formularios de entrada este sitio tiene las mismas

caracter´ısticas que el anterior, adicion´andole que el le permite a los usuarios

la interacci´on por medio de cuestionarios, comentario y sugerencias.

- Sitio con acceso de datos din´amicos aqu´ı, adem´as de las caracter´ısticas

antes mencionadas, cuenta con bases de datos en las cuales el usuario puede

realizar consultas y b´usquedas.

- Sitio creado din´amicamente en este sitio los requerimientos son

pare-cidos pero deben suplir con las necesidades de cada usuario; creando sitios

din´amicos que sean compatibles con el entorno de navegaci´on de cada

usua-rio.

- Aplicaci´on de software basada en la Web este sitio puede tener todas

las caracter´ısticas antes mencionadas, pero logrando un parecido con una

implementaci´on cliente/servidor com´unmente conocido que a un sitio web

est´atico.

(40)

nuestro mundo circundante hemos podido observar la necesidad y la utilidad

de la red de redes; Internet para mejorar de cierta manera nuestras

condi-ciones de vida y as´ı fortalecer m´as nuestro proceso de formaci´on educativa y

contribuir con un mejoramiento del global de las necesidades de cada quien

observemos que un proyecto que comenz´o meramente con fines militares para

no centralizar los datos, ha tenido un crecimiento significable hoy en d´ıa el

mundo se mueve con la web, ayudando a peque˜nas, medianas y grandes

em-presas a si como todo entidad educativa. Tengamos en cuenta que emem-presas

mueven sus negocios por medio de la internet y que hasta pol´ıticas como

el CRM para el manejo de clientes, son muy importantes para las empresas

como por ejemplo, Dell, surgen pol´ıticas para el mantener los clientes y

te-nerlos en contactos v´ıa Web, mediante Internet se cuidada de cierta manera

la imagen de una empresa, por ejemplo mediante el marketing a trav´es de

Internet permite reforzar el servicio, haciendo m´as fuerte la relaci´on entre la

marca y el cliente.

Esto implica un uso creativo del medio, involucrando verdaderamente a

las personas con la compa˜n´ıa. Utilizando la inmediatez, que brinda esta v´ıa

de comunicaci´on. Con la herramienta comunicacional, se permite una

rela-ci´on constante e inmediata con los clientes, as´ı como mantener a los clientes

contentos, conquistar nuevos nichos de mercado y, por ende, incrementar las

ventas.

Debemos tener en cuenta que para la efectiva comunicaci´on en la web

(41)

el intercambio de comunicaci´on, vale la pena preguntarse, as´ı para poder

acceder a toda la informaci´on que nos puede suministrar Internet s´olo debes

poseer un servicio de alg´un proveedor de Internet un navegador como Mozilla

o Netscape.

Por medio de un sitio web podremos tener nuestro sitio accesible o

dis-ponible 24 horas al d´ıa, 365 d´ıas del a˜no en absolutamente todo el mundo

para quienes tienen acceso; es decir, cerca de 600 millones de personas

aproxi-madamente, es por esto que nuestros datos en internet publicados en el sitio

web podr´ıan ser accesibles a toda persona en cualquier momento en cualquier

parte del mundo.

Todas estas consideraciones nos llevan a la conclusi´on de que un sitio

web bien logrado no es ´unicamente un espacio en la red para ver el mismo

comercial que en televisi´on; es en realidad una extensi´on de las empresas o

instituciones, as´ı mismo teniendo en cuenta la importancia y aplicabilidad

que tiene la ingenier´ıa Web en nuestro desarrollo cognitivo, social y vivencial

es f´acil visionar que cada una de las funciones que ella emana estar´an

siem-pre ligadas a la vanguardia del desarrollo progresivo de la tecnolog´ıa y del

hombre.

La ingenier´ıa del software, incluye nuevas metodolog´ıas de desarrollo

esen-ciales para la administraci´on de proyectos. Actualmente la ingenier´ıa web ha

adoptado tambi´en metodolog´ıas de la ingenier´ıa del software y ha creado

muchas nuevas. Debido a que la informaci´on es p´ublicada para conocimiento

(42)

y ´eticos que pueden influir a la hora de la publicaci´on. De acuerdo con esto,

la ingenier´ıa Web puede utilizar una parte de cada una de estas disciplinas

y no ser dominada por puntos de vista muy particulares, es una

respues-ta de car´acter multidisciplinario para las aplicaciones Web. Usualmente, las

aplicaciones web son multidisciplinares, ya que son construidas en un medio

constantemente cambiante, donde los requerimientos son inestables, los

equi-pos de desarrollo generalmente son peque˜nos, las comunidades de usuarios

son m´as amplias que antes y la competici´on ahora es a nivel mundial. En

ge-neral, las aplicaciones web, necesitan ser funcionales, mantenibles, escalables

y seguras. Como podemos ver, la actual demanda de las aplicaciones web

es totalmente diferente de las aplicaciones convencionales y por lo tanto hay

una gran necesidad de la ingenier´ıa web.

2.7.

Metodolog´ıas web

Hoy en d´ıa las aplicaciones que se desarrollan son muy diferentes a las

que se desarrollaban hace unos a˜nos. El desarrollo de las comunicaciones y

la gran difusi´on de Internet han creado nuevas necesidades dentro de los

sis-temas software. En este sentido, muchas definiciones de sissis-temas se est´an

dando dentro del mundo de la ingenier´ıa del software: sistemas multimedia,

sistemas hipermedia, aplicaciones web, sistemas de informaci´on global, etc.

Este trabajo es el resultado de la investigaci´on que se ha llevado a cabo para

estudiar una posible metodolog´ıa para el desarrollo de sistemas de

(43)

aplicando en este ´ambito y se presenta los primeros inicios de una nueva

pro-puesta que actualmente se est´a elaborando. Sin embargo, antes de comenzar

a plantear el problema que nos va a ocupar el contenido de este trabajo,

es necesario enmarcar el entorno de trabajo en el que nos vamos a mover.

Para ello, es necesario hacer una serie de definiciones previas. Desde que el

desarrollo de aplicaciones inform´aticas se empez´o a considerar un proceso de

ingenier´ıa, muchas metodolog´ıas de desarrollo han ido naciendo con el fin de

dar soporte al ciclo de desarrollo del proyecto. Entre estas, podemos

desta-car algunas como M´ETRICA, MERISE, SSADM y ya m´as recientes como

OMT o el actual UML. Todos estas metodolog´ıas estaban orientadas

des-de sus comienzos al des-desarrollo sistemas para gestionar una informaci´on que

se encuentra almacenada en una o varias bases de datos, distribuidas o no.

Entre los aspectos que se tratan como m´as cr´ıticos en estas metodolog´ıas,

los m´as importante son el almacenamiento y la recuperaci´on adecuada de

la informaci´on, as´ı como que las posibilidades funcionales que ofrezcan sean

las necesarias. Otro t´ermino que comienza a nacer es el de las aplicaciones

multimedia. Mientras que las metodolog´ıas anteriores tratan con especial

in-ter´es los aspectos de almacenamiento y funcionalidad, en las aplicaciones

multimedia el objetivo esencial va a ser difundir informaci´on almacenada en

diferentes medios (im´agenes, v´ıdeos, m´usica, etc.) de manera que llegue al

p´ublico no experto en inform´atica de una forma sencilla, f´acil e intuitiva. Son

aplicaciones que nos preocupan tanto por las necesidades de

(44)

funcionalidad, como por la apariencia y el interfaz del sistema. El desarrollo

de estos sistemas comienzan a realizarse sin que haya ninguna norma que se

pueda tomar como marco de referencia para su desarrollo. Sin embargo, a

principios de los 90, se comienza a estudiar la necesidad de una metodolog´ıa

que gu´ıe a los desarrolladores y que asegure la calidad de los productos

mul-timedia generados. Por esta raz´on, desde el a˜no 93 comienzan a publicarse

propuestas metodol´ogicas y nuevos modelos para representar la problem´atica

de estas aplicaciones: RMM , EORM, OOHDM [14], etc. Junto con todo esto,

Internet va tomando cada vez m´as popularidad. Hoy en d´ıa Internet supone

un excelente medio para obtener informaci´on de los m´as variados temas sin

necesidad de movernos de casa. Internet nos permite, a trav´es de interfaces

sencillas, intuitivas y amigables, hacer desde una consulta a la cartelera de

cine hasta comprar acciones en nuestra entidad bancaria. Sin embargo, esto

no siempre ha sido as´ı. En sus comienzos la Web naci´o como una red que

co-nectaba a varias redes privadas, p´ublicas y de centros de investigaci´on, con el

objetivo de compartir informaci´on entre grupos de investigaci´on localizados

en diversos lugares. Cuando la red de redes comenz´o a tomar popularidad, las

p´aginas que se mostraban en los servidores de las organizaciones eran p´

agi-nas est´aticas que podr´ıamos describir como documentos mostrados a trav´es

de Internet. Sin embargo, poco a poco y, a medida que va aumentando la

popularidad de la red, las empresas y organizaciones comienzan a requerir

que sus p´aginas tengan un cierto dinamismo que las haga m´as atractivas

(45)

cada vez m´as interactivas, permitiendo que el usuario no solo sea un sujeto

pasivo en la p´agina, sino que, comienza a interactuar mandando datos al

ser-vidor remoto y recibiendo respuestas de este. Poco a poco Internet adquiere

popularidad y las organizaciones ven en ella una posibilidad de publicidad

efectiva y de facilitar la comunicaci´on con sus clientes. Comienza as´ı la

ne-cesidad de incluir bases de datos y grandes vol´umenes de informaci´on en la

red. A finales de los 90, las p´aginas Web han dejado de ser p´aginas

documen-tales puramente est´aticas para dejar paso a p´aginas interactivas, en las que

se incluye informaci´on en m´ultiples medios y con las que el usuario puede

in-teractuar. En estas p´aginas se han unido los conceptos de hipertexto con los

m´ultiples medios, dando origen a lo que se conoce como hipermedia. Adem´as,

la nueva generaci´on de p´aginas Web est´a dotada de una gran funcionalidad.

Ya no tenemos p´aginas que muestran y recogen datos, lo que

actualmen-te se tiende a mostrar por Inactualmen-ternet son complejas aplicaciones con grandes

requisitos de almacenamiento y funcionalidad, acompa˜nado de un complejo

y llamativo interfaz, que engloba informaci´on en m´ultiple medios y enlaces

no solo entre datos textuales, sino que, permite tambi´en enlaces entre datos

multimedia. Son los llamados sistemas de informaci´on web, que est´an

dan-do origen a complejos portales que se est´an ganando la atenci´on del p´ublico

actual. Debido a este gran avance y promovidos por las mismas inquietudes

de otros entornos, desde el a˜no 98 est´an empezando a nacer metodolog´ıas

(46)

Las metodolog´ıas para la web nacen en la mayor´ıa de los casos de otra

meto-dolog´ıa anterior, bien de una metometo-dolog´ıa cl´asica, como el caso de Conallen

basada en el Proceso Unificado y UML; o bien de una metodolog´ıa para

apli-caciones multimedia, como el caso de los nuevos desarrollos de OOHDM .

Otro t´ermino importante que aparece tambi´en hoy en d´ıa es el concepto de

biblioteca digital. Una biblioteca digital (BiDi) es una biblioteca que ha sido

extendida y mejorada mediante la aplicaci´on de la tecnolog´ıa digital. Es la

uni´on de ordenadores, sistemas de almacenamiento y redes de comunicaciones

con el contenido y el software necesario para reproducir, emular y extender

los servicios proporcionados por las bibliotecas conve ncionales. Una

biblio-teca digital debe cumplir todas las tareas de una bibliobiblio-teca convencional y

explotar las ventajas de la tecnolog´ıa digital en el almacenamiento, la b´

usque-da y las comunicaciones, adem´as de la integraci´on de nuevos tipos de medios

(textos, im´agenes, sonidos, v´ıdeos, animaciones). La biblioteca digital

pro-porciona a una comunidad de usuarios un acceso coherente a repositorios de

informaci´on grandes y organizados. Las bibliotecas digitales son construidas

(recogiendo y organizando la informaci´on) por una comunidad de usuarios

y sus funcionalidades son acordes a las necesidades de informaci´on de dicha

comunidad. Las posibilidades de los usuarios para acceder, reorganizar y

uti-lizar este repositorio est´an enriquecidas con las capacidades de la tecnolog´ıa

digital. Tambi´en han aparecido propuestas para el desarrollo de aplicaciones

basadas en BiDi [8]. Como resumen a esto, podr´ıamos decir que durante los

´

(47)

entornos concretos dando m´as importancia a los aspectos m´as importantes

de los sistemas que tratan. En la multimedia, el tratamiento de los m´

ulti-ples medios y el entorno visual es esencial, de ah´ı que las metodolog´ıas de

la multimedia se centren en estos aspectos. Las metodolog´ıas de la web, van

a estar m´as orientadas a aspectos de navegaci´on y arquitecturas. Mientras

que el resto de las metodolog´ıas m´as generales, el Proceso Unificado, OMT,

etc. van a centrarse m´as en aspectos como el almacenamiento de la

infor-maci´on y la funcionalidad. En la actualidad, las aplicaciones se desarrollan

normalmente en entornos distribuidos, es muy com´un el que se distribuyan

por internet y normalmente tienen asociados elementos multimedia e

hyper-media en grandes bases de datos. Se caracterizan por tener grandes requisitos

funcionales y de seguridad, m´ultiples usuarios y en muchos casos indefinidos

y con diferentes grados de conocimiento. Estas aplicaciones se conocen como

sistemas de informaci´on global, y son, por decirlo de alguna manera, un

con-cepto mucho m´as gen´erico que engloba a las aplicaciones que se encuentran

en los otros grupos. El sistema de informaci´on global puede verse como si

fuera una aplicaci´on multimedia, puesto que normalmente maneja

informa-ci´on almacenado en m´ultiples medios. Pero cuando se distribuye a trav´es de

internet, se podr´ıa ver como un sistema de informaci´on web. Sin embargo,

ninguna de las metodolog´ıas de estos ´ambitos ser´ıa adecuada, puesto que no

tratan los aspectos de almacenamiento y funciona lidad de manera

adecua-da, que en los sistemas de informaci´on web suelen ser bastante cr´ıticos. Los

(48)

y requieren sistemas de seguridad muy potentes, as´ı como una funcionalidad

muy elaborada que asegure que los usuarios van a poder trabajar con esta

informaci´on de manera adecuada. Para tratar estos aspectos, metodolog´ıas

como el Proceso Unificado podr´ıan ser un buen marco de referencia para su

desarrollo. Por otro lado, y cuando su medio de transmisi´on es la web, cosa

que suele ser muy com´un, el sistema de informaci´on global adquiere todas las

caracter´ısticas de un sistema de informaci´on en la web. Normalmente, estos

sistemas deben tener una interfaz intuitiva y amigable que hacen uso de la

multimedia para llegar m´as f´acilmente al usuario. As´ı un sistema de

infor-maci´on global podr´ıa verse como una aplicaci´on multimedia. Pero adem´as

si analizamos la definici´on de biblioteca digital, ¿no podr´ıamos decir que un

sistema basado en bibliotecas digitales es un sistema de informaci´on global?.

Por ser el sistema de informaci´on global el m´as gen´erico, este trabajo se

mueve en este entorno. Aqu´ı vamos a estudiar las propuestas metodol´ogicas

definidas para sistemas multimedia, sistemas de informaci´on web, etc. Con el

fin de encontrar modelos e ideas consensuadas que nos permitan desarrollar

una metodolog´ıa para el desarrollo de los sistemas de informaci´on global.

2.8.

HDM- A Model-Based Approach to

Hy-pertext Aplication Design

HDM (Hypermedia Design Model) [6] es uno de los primeros m´etodos

desarrollado para definir la estructura y la navegaci´on propia de las

(49)

ampl´ıa el concepto de entidad e introduce nuevos elementos, como las

uni-dades o los enlaces. En HDM se pretende especificar la aplicaci´on mediante

un modelo Entidad-Relaci´on extendido. Este modelo va a representar la

es-tructura global de la aplicaci´on sin entrar en detalles de desarrollo de los

elementos unitarios (nodos de la aplicaci´on). A pesar de que en la

actuali-dad HDM no se usa, ha servido como base a otras importantes metodolog´ıas

como son RMM [5] y OOHDM [8], las cuales veremos m´as adelante.

2.8.1.

HDM

HDM propone un conjunto de elementos que permiten al dise˜nador

es-pecificar una aplicaci´on. Estos elementos son las entidades, los componentes,

las perspectivas, las unidades y los enlaces. Todos estos elementos pueden

incorporarse en la sem´antica del cl´asico modelo Entidad-Relaci´on. Sin

em-bargo, y a pesar de que t´erminos como las entidades hayan sido heredados

de los ERD veremos a continuaci´on que han sido extendidos para poder

re-presentar una estructura compleja que contenga enlaces y una sem´antica de

navegaci´on interna.

En definitiva una aplicaci´on especificada mediante un modelo HDM

con-siste en una estructura general compuesta por unas unidades b´asicas

deno-minadas entidades. Una entidad denota un objeto f´ısico o conceptual del

universo de discurso de la aplicaci´on. En HDM las entidades son agrupadas

(50)

por un conjunto de perspectivas bajo las que se pueden presentar su

conte-nido y un conjunto de enlaces de aplicaci´on por los que se puede navegar

(estos conceptos se ver´an m´as adelante). Una entidad es la unidad m´ınima

aut´onoma de cualquier modelo HDM, pero existen otros conceptos a˜nadidos

que veremos a continuaci´on. Cada entidad est´a compuesta por una jerarqu´ıa

de componentes que heredan las propiedades de dicha entidad. Los

compo-nentes no tienen raz´on de ser sin que exista la entidad de la que dependen.

Los componentes son, por su parte, abstracciones para dise˜nar un conjunto

de unidades o nodos que representan un mismo conjunto de informaci´on de

la entidad. Una unidad, es pues un dep´osito de la informaci´on contenida en

una aplicaci´on. Una unidad representa un fragmento del contenido de una

entidad presentada bajo una perspectiva particular. De esta forma, la

pers-pectiva permite representar la multiplicidad de presentaciones de un mismo

contenido de informaci´on (por ejemplo, la presentaci´on de un documento en

m´ultiples lenguas). Para entender mejor la relaci´on entre estos elementos,

usaremos la potencia representativa de UML. Vemos as´ı en la figura

siguien-te un modelo de clases que representa las relaciones entre los elementos de

HDM.

En un modelo HDM las estructuras de informaci´on pueden ser conectadas

mediante enlaces. Un enlace entre dos elementos indica que en la aplicaci´on

hipermedia resultante existe la posibilidad de navegar entre esos dos

elemen-tos. HDM distingue tres tipos de enlaces: - Enlaces estructurales, conectan

Referencias

Documento similar

En este apartado vamos a realizar un estudio atendiendo a todo lo que acabamos de explicar, para determinar que opción es la mejor a la hora de desarrollar nuestro proyecto

El proceso de desarrollo de software es un proceso de conocimiento intensivo y debe modelarse utilizando el enfoque de la gestión de casos, por lo que se definió en

Por esa tipo de razones es imprescindible contar con una definición precisa de todos los requerimientos del sitio a desarrollar, lo que incluye aspectos tales como los objetivos del

Genymotion sistema operativo Android, de esta manera se puede acelerar el proceso de desarrollo y automatizar las pruebas [27].. Dentro de

Descripción general de la Metodología Ágil para Sistemas de Información Geográfica La metodología que se propone es un híbrido entre la metodología para el desarrollo de

La intención principal de esta investigación es dar a conocer los intentos de mejora o falta de estos en el proceso de desarrollo de software en nuestro país, tomando como base el

Para esto es importante entender las necesidades de los docentes y familiarizarlos con el uso de la PC como una herramienta tanto para el proceso de evaluación como para el

En esta línea, el proyecto que aquí se presenta propone el desarrollo de un portal para el comercio electrónico basado en herramientas de software libre y estándares, por