Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Migracion de Sistema
Migracion de Sistema
UNIVERSIDAD DE JAN
Ingeniera en Informtica
PROCESO DE MIGRACIN DE
SISTEMAS WEB.
APLICACIN AL SISTEMA DE
RECOMENDACIN REJA
Informtica
Lenguajes y Sistemas Informticos
Septiembre, 2012
ii
INFORMAN
Jan,17deseptiembrede2012
VB
Fdo:D.LuisMartnezLpez
Fdo:D.RosaMRodrguezDomnguez
iii
iv
PROCESO DE MIGRACIN DE
SISTEMAS WEB.
APLICACIN AL SISTEMA DE
RECOMENDACIN REJA
Alumno:
Tutores:
Departamento: Informtica
rea:
Universidad de Jan
Escuela Politcnica Superior de Jan
Departamento de Informtica
Quieroexpresarmimssinceroagradecimientoatodaslaspersonasquedeunmodouotro
hanparticipadoenlarealizacindeesteproyecto,conespecialdedicatoriaa...
Mispadres,portodoslosesfuerzosquehanhechopormylosvaloresquemehaninculcado.
AMacarena,porestarsiempreamiladoydarmenimoscuandomslosnecesitaba.
Amishermanos,MJosyAntonio,porserungranejemploaseguir.
Amistutores,RosayLuis,sinloscualesnopodrahaberrealizadoesteproyecto,graciaspor
vuestraayudaydisponibilidad.
Amisamigos,porquesonunapartemsdemifamilia.
vi
ndiceGeneral
Captulo1.Introduccin....................................................................................................................1
1.1.MotivacinyPropsitodelProyecto...................................................................................3
1.2.Objetivos...................................................................................................................................6
1.3.EstructuradelaMemoria.......................................................................................................6
Captulo2.ProcesosdeMigracinSoftware.................................................................................9
2.1.MarcoConceptualsobrelaMigracindeSoftware.........................................................11
2.1.1.DefinicindeMigracinTecnolgica............................................................................11
2.1.2.ElProcesodeMigracindentrodelCiclodeVidaSoftware.....................................12
2.1.3.EsquemasdeProcesosdeMigracin.............................................................................20
2.2.MetodologadeMigracinClsica......................................................................................22
2.3.TerminologaBsicasobreWeb...........................................................................................29
2.4.MetodologadeMigracinbasadaenTecnologasWeb.................................................33
2.4.1.AnlisisdeRequerimientos............................................................................................36
2.4.2.Diseo.................................................................................................................................40
2.4.3.ProcesodeMigracin.......................................................................................................50
2.4.3.1.MigracinParcial...........................................................................................................51
2.4.3.2.MigracinCompleta......................................................................................................55
2.4.5.Evaluacin.........................................................................................................................57
2.4.6.Mantenimiento..................................................................................................................58
Captulo3.ProcesodeMigracinparaunCMS..........................................................................61
3.1.PresentacindelProblema....................................................................................................63
3.1.1.QuesunCMS?..............................................................................................................63
3.1.2.Ventajas..............................................................................................................................71
3.1.3.Historia...............................................................................................................................73
3.2.PropuestaMetodolgicaparaMigracindeCMS............................................................74
3.2.1.AnlisisdeRequerimientos............................................................................................75
3.2.2.Diseo.................................................................................................................................77
Captulo4.MigracindelSistemadeRecomendacindeRestaurantesREJAenelCMS
Joomla...................................................................................................................................................83
4.1.DescripcindelSistemadeRecomendacindeRestaurantesGeorreferenciados
REJA.................................................................................................................................................85
vii
4.2.IntroduccinalCMSutilizado............................................................................................87
4.2.1.DefinicindeJoomla.......................................................................................................87
4.2.2.Estructura..........................................................................................................................89
4.2.3.Funcionamiento................................................................................................................91
4.2.4.VentajasyCaractersticas...............................................................................................95
4.3.ProcesodeMigracindeREJApasoapaso......................................................................96
4.3.1.AnlisisdeRequerimientos............................................................................................96
4.3.2.Diseo..............................................................................................................................106
4.3.3.ProcesodeMigracin....................................................................................................124
4.3.3.1.MigracinParcial........................................................................................................125
4.3.3.2.MigracinCompleta...................................................................................................126
4.3.5.Evaluacin.......................................................................................................................134
4.3.6.Mantenimiento...............................................................................................................138
4.4.ProcesosAdicionalesalaMetodologaPropuestaparaProblemasEspecficos......140
Captulo5.Conclusiones...............................................................................................................143
Bibliografa.......................................................................................................................................147
AnexoI.ProcedimientosdeCopiasdeSeguridadenJoomla.................................................151
a)ProcedimientoManual...................................................................................................153
b)ProcedimientoAutomtico............................................................................................155
AnexoII.EstrategiasdeMigracinenJoomla...........................................................................161
a)MigracinAutomatizada.Mtodo1............................................................................164
b)MigracinAutomatizada.Mtodo2............................................................................165
AnexoIII.InventarioHardwareySoftware...............................................................................169
viii
Captulo1
Introduccin
1.1.MotivacinyPropsitodelProyecto
Lamigracindeunsistemaaotroesunanecesidadquesehatenidodesdelosinicios
delainformtica,debidoalaconstanteevolucinquecaracterizaeldesarrollodelsoftware.
Inicialmente los expertos informticos desarrollaban software que era usado por ellos
mismos, de manera que la migracin de este software no representaba excesiva dificultad
paraellos.Todavaelsoftwarenoeraunproductodeusomasivo.
En la actualidad, el uso de diferente software est muy extendido y las alternativas
son muy amplias, de modo que se puede encontrar gran variedad de software para una
mismafinalidad.Alserlasexigenciasdelmercadoylasdemandasdelosusuariossobrela
calidad del software y personalizacin cada vez mayores, el proceso de migracin de un
softwareaotroseproduceconrelativafrecuencia.
Estas migraciones de software pueden deberse a diferentes razones, como que el
sistema se haya quedado obsoleto o que surjan necesidades que no cubran los sistemas
actuales.Enmuchasocasiones,elhechodecambiardeunsoftwareaotro,tambinsedebe
al deseo de probar cosas nuevas y mantenerse actualizado con las ltimas versiones que
existanenelmercado.
Al igual que las migraciones se pueden realizar entre distintos software con
funcionalidadessimilares,lasmigracionestambinpuedendarseenunmismosoftwarepara
cambiarhaciaunaversinmejorada.Estecambiosepuedeproducirencualquiermomentoy
por cualquier razn. La Primera Ley de la Ingeniera de Sistemas [1] establece que: sin
importarenqumomentodelciclodevidadelsistemanosencontremos,elsistemacambiar,yeldeseo
decambiarlopersistiralolargodetodoelciclodevida.
Elorigendeestoscambiospuedesermuyvariado,perosedistinguencuatrofuentes
fundamentalesdecambio[2]:
Nuevos negocios o condiciones comerciales que dictan los cambios en los
requisitosdelproductooenlasnormascomerciales.
Nuevas necesidades del cliente que demandan la modificacin de los datos
producidos por sistemas de informacin, funcionalidades entregadas por
productososerviciosentregadosporunsistemainformtico.
Reorganizacin,crecimientooreduccindelnegocio queprovocacambiosenlas
prioridadesdelproyectooenlaestructuradelequipodeingenieradelsoftware.
Restriccionespresupuestariasodeplanificacinqueprovocanunaredefinicindel
sistemaoproducto.
La implantacin y crecimiento de Internet y sus tecnologas asociadas,
fundamentalmente la web, han hecho que aparezcan nuevos retos en los procesos de
migracin de sistemas. La web fue diseada inicialmente de manera simple y a bajo costo
parasatisfacerlanecesidaddeaccesoalainformacinmediantepginasestticas.Luegose
adaptalanecesidaddeinteraccinentrelawebyelusuario,mediantepginasdinmicas.
Posteriormenteseincluyeronbasesdedatosensudiseo,demaneraquesepuedesolicitaro
almacenar informacin durante dicha interaccin. Esto dio lugar a la aparicin de sistemas
de gestores de contenido, que permiten crear una estructura de soporte, para la creacin y
administracin de contenidos, principalmente en sitios web, por parte de los
administradores,editores,participantesydemsrolesquesedefinan.
1.2.Objetivos
Elprincipalpropsitodelproyectoeselestudioypropuestadeunametodologade
migracinbasadaenplataformasCMS,ylaaplicacindedichametodologaalamigracin
deunsistemaderecomendacinderestaurantes,REJA.Portanto,losobjetivosdelproyecto
sern:
Recopilacinyrevisinbibliogrficademetodologasdemigracin.
Propuesta de estrategias y herramientas de migracin especficas para sistemas
CMS.
AplicacindelametodologaanterioralsistemaderecomendacinREJA.
Evaluacindelamigracinyconclusionesdelprocesodemigracin.
RealizacindeunaMemoria
1.3.EstructuradelaMemoria
Enestaseccinvamosapresentarlosdistintoscaptulosenlosqueseestructuraeste
proyectoyloscontenidosdelosmismos.
Elprimercaptuloesunaintroduccinmediantelacualsepresentalamotivacinde
esteproyecto,lospropsitosqueseperseguirnylosobjetivosaconseguir.
Enelcaptulo2serealizaunacontextualizacindelconceptodemigracinsoftware,
definiendolamigracintecnolgica,localizandoelprocesodemigracinenelciclodevida
software y enumerando diferentes esquemas de procesos de migracin. A continuacin, se
describe una metodologa de migracin clsica y una metodologa de migracin basada en
tecnologasweb.
Enelcaptulo3sepresentaelproblemaconcretoreferentealamigracindesistemas
basados en gestores de contenidos proponiendo una metodologa especfica de migracin
adaptadaaestossistemas.
Enelcaptulo4sellevaalaprcticaelprocesotericodescritoenelcaptuloanterior,
utilizandoparaellolamigracindeunaaplicacinwebdeunSistemadeRecomendacinde
RestaurantesdeJan,denominadoREJA,desarrolladasobreelCMSJoomla.
Elcaptulo5recogelasconclusionesgeneralesobtenidasdeldesarrollodelproyecto.
Captulo2
ProcesosdeMigracinSoftware
10
Enestecaptuloserealizaunacontextualizacindelconceptodemigracinsoftware,
para lo cual se define el trmino migracin tecnolgica, se ubica el proceso de migracin
dentro de la definicin del ciclo de vida software y se explican diferentes esquemas de
procesosdemigracin.Ensegundolugarsedescribeunametodologademigracinclsica.
Entercerlugarsedefinenvariosconceptosquesonmuyutilizadosalolargodeldocumento.
Finalmentesedescribeunametodologademigracinsobretecnologasweb.
2.1.MarcoConceptualsobrelaMigracindeSoftware
2.1.1.DefinicindeMigracinTecnolgica
Unamigracintecnolgicaesunprocesodecambioenloselementosdelsoftwarey/o
hardware.Todamigracinincluyeunaseriedepasosaseguir:
Determinacindelacausadelamigracin.
Fijarelmomentodelamigracin.
Fijarelprocedimientodemigracin.
Evaluarlamigracin.
Un proceso de migracin no puede darse slo con la sustitucin del software, pues
estninvolucradosfactoresdepreparacinyprevisinquedebensertenidosencuenta.
Un ejemplo de migracin de software puede ser la transicin de una plataforma a
otracompletamentedistinta.Otroejemplo,eselcambiodeversindeunsistemaoperativoa
unaversinmsactualizada.Inclusoenestecambiodentrodeunmismosistemaoperativo,
nosedebesuponerquelosformatosdearchivos,porejemplo,serntransportables,porlo
que habr que hacer pruebas de funcionamiento antes de realizar cualquier modificacin.
11
Todas las migraciones deben basarse en una cuidadosa planificacin para evitar posibles
prdidasdeinformacinofuncionalidad.
Antes de tomar cualquier decisin, hay que tener en cuenta cules son las
funcionalidadesdelnuevosoftware[4].Cuandosetienenvariasopciones,losresponsables
delprocesodemigracindebenconocerlasventajaseinconvenientesdecadaproducto.Se
aconsejaconsultaralosusuariosyexplicarleslasrazonesporlasquesevaallevaracabola
migracinycmolesafectar,paraayudaralxitodelproceso.
2.1.2.ElProcesodeMigracindentrodelCiclodeVidaSoftware
Dado que nuestro PFC se centra en el proceso de migracin, vamos a comentar en
qu fase est enmarcado este proceso dentro del ciclo de vida software. Para ello primero
definimosqueselciclodevidasoftware:
Segn el estndar IEEE 1074 [5]: Una aproximacin lgica a la adquisicin,
suministro,desarrollo,explotacinymantenimientodelsoftware.
Segn la norma ISO 12207 [6]: Es un marco de referencia que contiene los
procesos, las actividades y las tareas involucradas en el desarrollo, explotacin y
mantenimiento de un producto software, abarcando la vida del sistema desde la
definicindelosrequisitoshastalafinalizacindesuuso.
LanormaUNE71044[7]agrupalasactividadesquepuedenllevarseacabodurante
el ciclo de vida software en cinco procesos principales, ocho procesos de apoyo y cuatro
procesos organizativos. Cada proceso del ciclo de vida est dividido en un conjunto de
actividades,ycadaactividaddivididaasuvez,enunconjuntodetareas.Loscincoprocesos
principalesson:
12
13
Figura2.1.ActividadesdelCiclodeVidaSoftwaresegnUNE71044
14
Uno de los procesos principales descritos en las definiciones del ciclo de vida
softwareymostradoenlaFigura2.1eselProcesodeMantenimiento.Esteprocesohasido
definidodediferentesformas:
El estndar IEEE 1219 [8] lo define como: la modificacin de un producto
software despus de haber sido entregado a los usuarios o clientes, con el fin de
corregir defectos, mejorar el rendimiento u otros atributos, o adaptarlo a un
cambioenelentorno.
LanormaISO12207[6]estableceque:elProcesodeMantenimientocontienelas
actividadesytareasrealizadasporelmantenedor.Esteprocesoseactivacuandoel
productosoftwaresufremodificacionesenelcdigoyladocumentacinasociada,
debido a un problema o a la necesidad de mejora o adaptacin. El objetivo es
modificarelproductosoftwareexistentepreservandosuintegridad.Esteproceso
incluyelamigracinyretiradadelproductosoftware.
Pressman[2]defineque:lafasedemantenimientosecentraenelcambioqueva
asociado a la correccin de errores, a las adaptaciones requeridas a medida que
evolucionaelentornodelsoftware,yacambiosdebidosalasmejorasproducidas
porlosrequisitoscambiantesdelcliente.
En las anteriores definiciones de mantenimiento aparecen indicados, directa o
indirectamente, cuatro tipos de mantenimiento: correctivo, adaptativo, de mejora y
preventivo:
Correctivo:Inclusollevandoacabolasmejoresactividadesdegarantadecalidad,
es muy probable que el cliente descubra algunos defectos en el software. El
mantenimientocorrectivocambiaelsoftwareparacorregirlosdefectos.
15
Adaptativo:Conelpasodeltiempo,esprobablequecambieelentornooriginal(por
ejemplo: CPU, el sistema operativo, las reglas de empresa, las caractersticas
externas de productos) para el que se desarroll el software original. El
mantenimientoadaptativoproducemodificacinenelsoftwareparaacomodarloa
loscambiosdesuentornoexterno.
Preventivo:Elsoftwaresedeterioradebidoalcambio,yporestoelmantenimiento
preventivo, tambin llamado reingeniera del software, debe permitir que el
software sirva para las necesidades de los usuarios finales. En esencia, el
mantenimiento preventivo hace cambios en programas a fin de que se puedan
corregir,adaptarymejorarmsfcilmente.
Perfectivo:Amedidaqueseutilizaelsoftware,elcliente/usuariopuededescubrir
funcionesadicionalesquevanaproducirbeneficios.Elmantenimientoperfectivo
llevaalsoftwaremsalldesusrequisitosfuncionalesoriginales.
EnlaFigura2.2semuestralaclasificacindelaspeticionesdemodificacinytipos
demantenimientoquesehandefinidoanteriormente.
Figura2.2.ClasificacindePeticionesdeModificacin
16
Sinembargo,enladefinicindelanormaISO14764[6],elProcesodeMantenimiento
Softwareconstadeseisactividades(verFigura2.3):
Figura2.3.ActividadesdelProcesodeMantenimiento
1. Implementacin del proceso: Esta actividad desarrolla los planes correspondientes
para llevar a cabo las tareas del mantenimiento. Tambin define los
procedimientos necesarios para la gestin de problemas y peticin de
modificaciones(empleandoelprocesoderesolucindeproblemas),eimplementa
elprocesodegestindeconfiguracinparamigrarlasmodificacionesdelsistema
existente.
2. Anlisis de problemas y modificaciones: Esta actividad consiste en analizar los
problemas o peticiones de modificacin con el fin de evaluar su impacto en el
sistema y la organizacin existentes, determinando el tipo de modificacin
(preventiva, correctiva, etc.), su alcance (tamao, coste, tiempo, etc.) y su nivel
crtico (rendimiento, seguridad, etc.). La organizacin encargada del
mantenimiento debe tambin verificar el problema, elaborar distintas opciones
17
18
b. Desarrollodeherramientasdemigracin
c. Conversindelsoftwareydelosdatos
d. Ejecucindelamigracin
e. Verificacindelamigracin
f.
Soportedelentornoantiguoenelfuturo
Hay que notificar a los usuarios la intencin de llevar a cabo la migracin
19
Esimportantequesetengaencuentaalosusuariosalahoradeplanificarla
retiradadelsoftwareyqueselesnotifiqueelplan.Lasnotificacionesdebernincluir
losiguiente:
i.
Descripcindelasustitucinoactualizacinconsufechadedisponibilidad.
ii.
Informedeporqunosesoportarmselsoftware.
iii.
nuevoyelretirado,ademsdeproporcionarformacinalosusuarios.Cuandotenga
lugar la retirada planeada, se deber notificar a todos los involucrados. Se debe
archivar,segnlasnecesidades,todaladocumentacin,ficherosycdigo.
Porltimo,aligualqueenelcasodelamigracin,sedeberpoderaccedera
los datos utilizados por, o asociados con, el software retirado de acuerdo a los
requisitosorganizacionalesdeproteccinyauditoraaplicablesalosdatos.
2.1.3.EsquemasdeProcesosdeMigracin
En cualquier proceso de migracin de software se deben tener en cuenta ciertas
consideraciones que determinan el desarrollo del proceso. A continuacin se presentan las
siguientesopcionesencuantoaesquemasdemigracin[4]:
a) Enunnicopaso:Todoslosusuarioscambiandelsistemaantiguoalnuevoalavez.
Enlaprctica,estosuponeprogramarelcambiocuandosepreveaunbajousodel
sistemaparacausarlosmenoresinconvenientesposibles.
20
21
2.2.MetodologadeMigracinClsica
Unavezubicadalafasedemigracindentrodelprocesocompletodelciclodevida
delsoftware,vamosacentrarnosenestafase,yaqueeslaqueataeanuestroproyecto.
Segn las directrices de Intercambio de Datos entre Administraciones (IDA) de
migracinasoftwaredefuentesabiertas[4],cualquierejerciciodemigracindebeincluir,en
general,lassiguientesfases:
1. Una fase de definicin del proyecto y de recopilacin de datos, en la que se
contemplen:
a. La descripcin del conjunto de condiciones iniciales relevantes consistentes,
porejemplo,en:
i. arquitecturaoarquitecturasdelossistemas,
ii. aplicacionesysusdatosasociados,
iii. protocolosynormasempleados,
iv. hardware,
v. elentornofsico,comoelanchodebandadelared,laubicacin,
22
vi. losrequisitossocialescomoelidiomaoidiomasylacapacitacindel
personal.
b. Unconjuntodecondicionesfinalesconelmismodetalle.
c. Unadescripcindecmollegardelascondicionesinicialesalascondiciones
finales.
2. Unajustificacindelamigracin,incluidoelcosteasociadoalamisma.
3. Una o ms fases piloto preparadas para probar si el plan y la justificacin
funcionan. Los datos de estas fases piloto pueden luego alimentar el modelo de
costesusadoenelplan.
4. Desplieguedelplan.
5. Seguimientodelaexperienciarealenrelacinconelplan.
BasndonosenlanormaISO/IEC14764[9],estndarespecficosobremantenimiento
de software, vamos a revisar cada una de las acciones y tareas que conlleva el proceso de
migracin,aligualqueeldesarrolloydocumentacinnecesariaparaefectuarlamigracin.
EstamigracinsedebeefectuardeformaquecumplalasnormasISO/IEC12207[6],
estndarparalosprocesosdeciclodevidadelsoftware,desarrollandounplandemigracin,
notificando a los usuarios la migracin, proporcionando entrenamiento, avisando de la
finalizacindelamigracin,calculandoelimpactodelnuevoentornoyarchivandolosdatos
Acontinuacinpasamosadescribirdeformadetalladacadaunodeestospasos(ver
Figura2.4):
23
1.Plandemigracin
2.Notificacindelintento
3.Implementacindelasoperacionesyentrenamiento
4.Notificacindelfinal
5.Revisinpostoperacin
6.Almacenamientodedatos
7.Soporte
Figura2.4.ProcesodemigracinbasadoenlasnormasISO/IEC14764
1. Plandemigracin:
Paraquesepuedacontrolardeformaadecuadalamigracindeunsistema,sedebe
crearunplandemigracin,ademsdedocumentarloyejecutarlo.
Lasactividadesdeplanificacindeberanincluir:
Anlisisderequerimientosydefinicindelamigracin
Desarrollodeherramientasdeayudaalamigracin
Conversindedatosyproductossoftware
24
Ejecucindelamigracin
Verificacindelamigracin
Soporteparaelantiguoentorno
El desarrollo del Plan de Migracin debe incluir las entradas que puedan
proporcionarnos los usuarios. Como parte de esta tarea, se deberan ejecutar los siguientes
pasos:
Analizarlosrequerimientosdelamigracin
Determinarelimpactodelamigracindelproductosoftware
Establecerunaplanificacinparaefectuarlamigracin
Identificarlosrequerimientosdelosconjuntosdedatosparasurevisinposterior
Definirydocumentarelesfuerzodemigracin
Determinarymitigarlosriesgos
Identificarlasherramientasdemigracinnecesarias
Desarrollary/oadquirirlasherramientasdemigracin
Descomponer los productos y datos software de forma incremental para su
conversin
Convertirlosproductosydatossoftware
Migrarlosproductosydatossoftwarealnuevoentorno
Ejecutarlasoperacionesparalelas
Verificarlamigracinpormediodepruebas
Proporcionarsoporteparaelantiguoentorno
25
2. Notificacindelintento
Unavezquesehayacompletadolaplanificacindelamigracin,losusuariosdeben
recibirlanotificacindelosplanesyactividadesdemigracin.Dentrodeestasnotificaciones
deberaestar:
Explicacindeporquyanodasoportealantiguoentorno
Descripcindelnuevoentornojuntoalafechadedisponibilidad
Descripcin de otras opciones de soporte disponibles, si las hay, una vez que
hayamosabandonadoelantiguoentorno
En este momento se debe proporcionar a los usuarios la planificacin y
procedimientosnecesariosparallevaracabolamigracin:
Identificarlospuestosafectadosporlamigracin
Obtenerlarealimentacindelpuestoafectado
Identificaraspectosespecficosdelpuesto
Divulgarlaplanificacin
3. Implementacindelasoperacionesyentrenamiento
Las operaciones paralelas del antiguo y nuevo entorno deberan dirigirse de forma
quelatransicindelantiguoalnuevoentornoseasuave.Comopartedestatarea,sedeben
realizarlossiguientespasos:
Conservarunpuestoensuconfiguracinoriginal
Instalarelsoftware
26
4. Notificacindelfinal
Unavezqueselleguealfinaldelamigracinplanificada,seenvalanotificacin a
todos los interesados. Toda la documentacin asociada al antiguo entorno, as como los
registrosycdigosearchivan.Comopartedeestatarea,hayque:
Divulgarloscambiosdelaplanificacindelamigracin
Documentarlosaspectosespecficosdelpuestoycomoseresolvern
Archivarlosdatosyelsoftwareantiguo
Retirarelantiguoequipo
27
5. Revisinpostoperacin
Esteprocesoserealizaparacalcularelimpactodeloscambiosenunnuevoentorno.
Los resultados de la revisin se envan a las autoridades apropiadas para su informacin,
guayactuacin.Comopartedeesteriesgoesaconsejable:
Revisarlosresultadosaloperarconlosdosentornosalavez
Identificarlasreasconunriesgopotencial
Identificaraspectosespecficosdelpuesto
Documentarlasleccionesaprendidas
Generaryanticiparuninformesobreelanlisisdelimpacto
6. Almacenamientodedatos
Los datos usados o asociados con el antiguo entorno deben quedar accesibles de
acuerdoconlosrequisitosdelcontratoparasuproteccinoauditora.Estatareasedivideen
lassiguientessubtareas:
Hacercopiasdelosdatosydelsoftwareantiguo
Almacenarlascopiasenunlugarseguro
7. Soporte
La actividad de Migracin usa los siguientes procesos del ciclo de vida de ISO/IEC
12207[6]relativosalaorganizacinyalsoporte:
Procesodedocumentacin:Definelasactividadesparaelregistrodelainformacin
producidaporunprocesodelciclodevida.
28
2.3.TerminologaBsicasobreWeb
Antes de avanzar en el desarrollo del proyecto, vemos necesario definir varios
trminos relacionados con las tecnologas web y que sern muy utilizados a lo largo del
29
Pginaweb
UnapginawebesundocumentooinformacinelectrnicaadaptadaparaInternety
que puede ser accedida mediante un navegador. Esta informacin se encuentra
generalmente en formato HTML o XHTML, y puede proporcionar navegacin a otras
pginaswebmedianteenlacesdehipertexto.Laspginaswebfrecuentementeincluyenotros
recursoscomohojasdeestiloencascada,imgenesdigitales,sonidos,etc.
Las pginas web pueden estar almacenadas en un equipo local o un servidor web
remoto.Elservidorwebpuederestringirelaccesonicamentepararedesprivadas.Elacceso
a las pginas web es realizado mediante su transferencia desde servidores utilizando el
protocolodetransferenciadehipertexto(HTTP).
Sitioweb
Un sitio web es un conjunto de pginas web que estn relacionadas entre s, por lo
general se acceden desde un mismo dominio o mantienen constante la raz de la direccin
URL. Un sitio web puede estar constituido de una o ms pginas web. La pgina web
principal de un sitio web suele llamarse index y que puede tener la extensin .htm, .php,
.asp,entreotras.
Los Sitios Web pueden ser de diversos gneros, destacando los sitios de negocios,
servicio,comercioelectrnico,imagencorporativa,entretenimientoysitiosinformativos.
30
Plataformaweb
Eninformtica,unaplataformaesunsoftwarey/ohardwaredeterminadoconelcual
una aplicacin es compatible y permite su ejecucin. Una plataforma es, por ejemplo, un
sistema operativo, un gran software que sirve como base para ejecutar determinadas
aplicacionescompatiblesconste.Tambinsonplataformaslaarquitecturadehardware,los
lenguajes de programacin y sus libreras en tiempo de ejecucin, las consolas de
videojuegos, etc. Existen programas multiplataforma, que permiten ejecutarse en diversas
plataformas,aligualqueemuladores,quesonprogramasquepermitenejecutardesdeuna
plataformaprogramasdeotraemulandosufuncionamiento.
Paradefinirunaplataformaweb,podrahacersereferenciaaunsistemaquepermite
crear y administrar un sitio web. Es el caso de Blogspot, MySpace o cualquier otra
plataforma web que nos permita crear un blog o pgina web, empleando un sistema web
dondepodemossubirartculos,crearcategoras,administrarlosusuariosquesesuscriban,
etc.
Enotrocontexto,unadefinicincorrectadeplataformawebpodrahacerreferencia
alconjuntodeprogramasysistemasquehacenqueunsitiowebestenfuncionamiento:el
servidorweb,labasededatos,elintrpretedeprogramacin,etc.
Acontinuacinseenumerandosejemplosparacadatipodeplataformadependiendo
delcontextodeltrmino:
o
Ejemplosdeplataformascomosistemasoperativos:WindowsyLinux
Ejemplosdeplataformasdesoftware:JavaJDKyJREy.NETFramework
Ejemplosdeplataformasweb:JoomlayDrupal.
31
Aplicacinweb
Una aplicacin es un programa informtico que permite a un usuario utilizar un
ordenadorconunfinespecfico.Lasaplicacionessonpartedelsoftwaredeunordenadory
suelen ejecutarse sobre el sistema operativo. Los objetivos de una aplicacin pueden ser
revisar correo, explorar el disco duro, editar textos, navegar en la web, jugar, etc. Son
ejemplosdeaplicacionesMozillaFirefox,Outlook,DropBox,Gimp,etc.
Unaaplicacinwebesaquellaaplicacinquelosusuariospuedenutilizaraccediendo
a un servidor web a travs de Internet o de una intranetmediante un navegador. En otras
palabras, es una aplicacin software que se codifica en un lenguaje soportado por los
navegadoresweb,yenlaqueseconfalaejecucindelaaplicacinalnavegador.
Ennuestrocaso,consideraremosunaaplicacinwebcomoelprogramaqueseejecuta
sobre la plataforma web utilizada, mediante la cual el usuario solicita informacin al
servidor de informacin mediante acciones disponibles en la aplicacin, logrando que ste
obtengalainformacinsolicitada.Enelcasoprcticodelcaptulocuarto,laaplicacinweba
la que se har referencia ser el Sistema de Recomendacin de Restaurantes de Jan,
denominadoREJA.
32
33
34
migrarcadaelementoporseparado,sinocomprobarlosenlacesqueseproducen
entrelosdiferenteselementos.
Algunas tareas que se realizan sobre un sitio web se pueden confundir con un
proceso de migracin cuando en realidad no lo son. Algunas de estas tareas son, por
ejemplo, la creacin de un sitio web con nuevos contenidos, el rediseo grfico del sitio
actual,eldesarrollodeunsitioquesloagregacontenidodeotrossitiosounnuevositioque
eliminatodoelsitioanteriorconservandonicamentelamarca.
En la Figura 2.5 se muestra el esquema detallado de la metodologa de migracin
basadaentecnologasweb.Estametodologaconstadeunaseriedetareasadesarrollarpara
considerar completado el proceso de migracin. Estas tareas se agrupan en las fases de
anlisis de requerimientos, diseo, proceso de migracin, evaluacin y mantenimiento. A
continuacin,vamosairenumerandolasdistintasfasesdelasquesecomponeelprocesode
migracinydesarrollandocadaunadeellas.
35
AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
ProcesodeMigracin
Migracinparcial
Migracincompleta
Evaluacin
Mantenimiento
Figura2.5.Esquemadetalladodelametodologademigracinbasadaentecnologasweb.
2.4.1.AnlisisdeRequerimientos
Eslafaseinicialdetodoprocesodemigracin(verFigura2.6).Enestafasehayque
justificarlosmotivosporloscualessevaallevaracaboesteprocesoylosobjetivosquese
desean alcanzar. Tambin hay que realizar una recoleccin de informacin necesaria del
sistema actual para poder utilizarla en posteriores etapas del proceso. Por ltimo, es
necesario sensibilizar de la necesidad de llevar a cabo la migracin para la mejora del
sistema, tanto a los usuarios finales del mismo como a los propietarios. A continuacin,
vemosdeformamsdetalladacadaunadeestasactividadesdelanlisisderequerimientos
36
Anlisisde
Requerimientos
Diseo
Procesode
Migracin
Evaluacin
Mantenimiento
Figura2.6.Elanlisisderequerimientoseslaprimerafasedelametodologademigracin
basadaentecnologasweb.
a)Justificacindelamigracin
En este apartado se justifican los motivos para la realizacin de la migracin
basndonos en la situacin actual del sistema. Los motivos estn relacionados con los
objetivosquesedeseanconseguir,porejemplo,siunodelosmotivosesporproblemasde
seguridad en el sitio web, uno de los objetivos a conseguir con la migracin debera ser
mejorarlaseguridad.Lasrazonesmsusualespararealizarunamigracinsonlareduccin
de costes, ampliacin de funcionalidades, mejora de productividad y mejora de seguridad.
Esta justificacin de la migracin deber ser facilitada a los usuarios finales del sitio para
explicarlosmotivosdelamigracin.
b)Objetivosdelamigracin
Unatareaarealizarantesdelamigracinesfijarlosobjetivosdesta.Estosobjetivos
nos servirn ms adelante para evaluar el xito de la migracin. Durante el desarrollo del
proceso,estosobjetivospuedenversealteradossinosencontramosconproblemastcnicosu
obstculos,oinclusopuedenmodificarsealestudiarlatecnologamsafondo.
Algunosdelosobjetivosmscomunespuedenserlossiguientes:
Mejorarlaseguridad:Lamejoradelaseguridaddeunsistemalohacemsrobustoy
productivo. Uno de los objetivos principales de toda migracin de un sitio web
debeserlaseguridad.
37
Mejorarlaproductividad:Unsitiowebdebefuncionarcorrectamente,peroadems
debe hacerlo de manera eficiente. Un sitio lento puede producir prdidas de
tiempoparasususuarios,loqueconllevaprdidadevisitasyportantoprdidade
clientesousuarios.
Ampliar la funcionalidad: Un sitio web nuevo desarrollado sobre tecnologas ms
actuales, puede disponer de nuevas funcionalidades que el sitio antiguo no
cumpla o no podan ser implementadas, con lo que se conseguir un sitio web
mscompetitivo.
Reduccin de costes: Uno de los objetivos de una migracin tambin puede ser la
reduccindecostes,debidoalmantenimiento,licencias,hardware,etc.
c)Recoleccindeinformacin
En esta fase se estudian todos los datos necesarios para empezar el proceso de
migracin,agrupndolosenlossiguientestresbloques:
Inventariodelcapitalhumano:Serealizauninventariosobreelpersonalquepodr
darsoportealsitiowebtantodeasistenciaalosusuarioscomodeadministracin
delmismo.Tambinsobreelpersonaldisponibleycualificadoparallevaracabo
lamigracinyladescripcindelosperfilesdelosusuariosfinales.
Inventariohardware:Serealizauninventariodelhardwaredisponibleactualmente
sobreelqueestalojadoelsitiowebactual.
Inventariosoftware:Serealizauninventariodelsoftwareactualmenteutilizadopara
la administracin y gestin del sitio web actual, para compararlo con los
38
requerimientosnecesariospararealizarlamigracinydarsoportealsitiowebtras
lamigracin.
d)Sensibilizacininstitucionalydelpersonal
Paraqueunproyectodemigracinengeneralydeunsitiowebenparticulartenga
xito,esmuyimportantequesetengaunavisinconvincenterespectodelamigracinpor
parte de los propietarios del sitio, de los encargados de realizar la migracin y de los
usuarios finales [14]. Una visin convincente se consigue explicando a los interesados las
mejoras sustanciales de la migracin. Si no se consigue que la mayora lo vean como algo
til,lamigracinpodraserunfracaso.Porestemotivo,estedebeserunodelosprimeros
pasosdelproyectodemigracin,inclusoantesqueeldiseoylaimplementacin.
Parapoderconvencerdesubondad,realmentesetienequeentenderasydominarla
materia.Paraconseguirestosepuedeprocederarealizarlossiguientespasos:
Difundirampliamentetodalainformacinposibledelproyecto.
Seguircomunicandoduranteeldesarrollodelmismo.
Documentarlasventajasydesventajasdelamigracin.
Definirindicadoresparaevaluarlavisindurantelamigracin.
En algunos casos, para justificar la visin positiva o convincente al personal, se
argumentaqueesordenadoporladireccinyestopuedesercontraproducente.Unavisin
positiva de los usuarios finales sobre el proceso de migracin ayudar al equipo de
desarrolloyalproyectoparaquegaranticeelxito.
39
2.4.2.Diseo
Unavezrealizadoelanlisisderequerimientosenelprocesodemigracin,sellevaa
cabolafasedediseo(verFigura2.7).Enestaetapaseanalizayplanificatodoelprocesode
migracin, tanto la temporalidad, el producto a obtener, la estrategia de migracin, los
recursosnecesarios,tantohumanoscomoeconmicos,etc.Dichasactividadessedescribena
continuacin.
Anlisisde
Requerimientos
Diseo
Procesode
Migracin
Evaluacin
Mantenimiento
Figura2.7.Lafasedediseoeslasegundafasedelametodologademigracinbasadaen
tecnologasweb.
a)Definicindelproductoaobtener
Enestepuntosedefinelafuncionalidadycaractersticasquesedeseanconseguirdel
nuevo sistema. Antes de comenzar una migracin de un sistema, se define cul ser el
producto final a obtener. Este producto final contempla todos los objetivos descritos en la
seccindeanlisisderequerimientos.
b)Planificacinderecursoshumanos
Alahoradehacerunamigracin,hayquetenerencuentaquenosiempresenecesita
el mismo nmero de personas encargadas de realizar la migracin y su nivel de
especializacin con el proyecto. Depende de la complejidad del sistema web sobre el cual
queremoshacerlamigracin,relacionadoconlacomplejidadyeltamaodelsitio.
Comoexplicamosenelapartado2.1.2sobreelciclodevidasoftware,lamigracines
slo uno de los pasos de la larga vida del ciclo de vida software y en este caso deun sitio
40
web. Por ello, las personas encargadas de la migracin puede que slo participen en este
pasoalolargodelavidadelsitio.Esnecesariomantenerconposterioridadalamigracin,
unaestructuradepersonalencargadadelaadministracinymantenimientodelmismo.
A continuacin, se definen los diferentes tipos de reglas u organizaciones que
participanenlamigracindeunsistemaweb.Cadareglanotieneporquserrealizadapor
unapersonadistinta,dependerdeltamaoycomplejidaddelsitio:
Directorinternodelproyecto:encargadodelaorganizacin,gestindelaconfiguracin
y ejecucin. Debe trabajar con los distintos grupos de trabajo y debe conocer
exactamentequseesperaconlamigracin,definirexactamenteelproductofinal.
Coordinadores: estn ms relacionados con grandes proyectos. Coordinan entre el
ncleodelequipodemigracinysusdiferentesdelegaciones,suponiendoqueexiste
un ncleo desde donde se realiza gran parte de la migracin y diferentes
delegacionesdesdedondeserealizanpartesconcretasdelproceso.
Especialistas en contenido: una migracin de un sistema web puede ser una
oportunidad para mejorar el contenido. Dentro de los especialistas de contenido
podemosdiferenciarvariosperfiles:
o
41
Expertosenlamateria:durantelamigracin,dependiendodelascaractersticas
del sitio que se est intentando migrar, se puede necesitar de la ayuda o
asesoramientodeexpertosenlamateriasobrelaqueelsitioestbasada.Estos
expertosresolverndudasoproblemasconcretosespecficosdeunamateria,
lacualelequipoencargadodelamigracinpuedequenodomine.
Otros: Hay una serie de perfiles que puede ser que haya que asignarlos a personas
concretas en algn proyecto de migracin pero que no tiene por qu tener que
asignarse siempre, dependiendo de la complejidad del sitio, el tamao, etc. Estos
perfilespuedenserlossiguientes:
o
42
c)Planificacintemporal
Laplanificacintemporaldelamigracinestilparaorganizarlastareasenglobadas
enelproceso.Paracadauna,tendremosqueespecificarsuduracinysufechadecomienzo.
Tambin se establecen plazos de entrega y una fecha para la finalizacin de la migracin.
Para poder hacer una estimacin sobre la temporalidad en la migracin total, podemos
realizar la migracin parcial y con ella estimar la temporalidad de la migracin total. Una
estrategiademigracinparcialsepodradividirenlatareadecopiasdeseguridadparciales,
migracinparcialdelsitiowebyevaluacindelamigracinparcial.Conestosdatosreales
sepodraestimarlatemporalidaddelamigracincompleta.
Para hacer la migracin del sitio web, hay que definir cules son las fechas ms
interesantespararealizarla,demodoquecauseelmenorimpactoposibleparalosusuarios
anteunaposiblecadadelaweb,ounperiodosinofrecerelservicioptimoporencontrarse
en pruebas. Esta puede ser realizada durante un cierre vacacional si se tratase de una
empresaobiendurantelasfechasquelasestadsticasdelsitiowebactualnosmuestrenque
tieneunmenornmerodevisitasrespectoaltotal.
Lafechaprevistadedisponibilidaddelnuevositiodeberserfacilitadaalosusuarios
finalesunavezqueestplanificada,aligualquelasfechasenlasqueelsistemapuedano
ofrecerelservicioptimoacausasdelamigracin.
d)Planificacindemigracindecontenido
En esta fase se estudia el contenido que actualmente hay en el sitio web para
posteriormenterealizarsumigracin.Lamigracindecontenidosedivideenlassiguientes
fases:
43
Lamigracindecontenidosepuederealizardemaneraautomticaomanual.Para
realizarlo de manera automtica existen diferentes aplicaciones software que
ayudanenestatarea,obiensepuededesarrollarunaespecficaparallevaracabo
latarea.Eneltercercaptulosedescribenvariasherramientasparaautomatizarel
proceso de migracin de contenido en un gestor de contenido. En el caso de no
poderdisponerdeningunaherramientaparalamigracindecontenido,habrque
realizarlademaneramanual.
44
e)Planificacineconmica
La estimacin de costes debe llevarse a cabo para establecer qu inversiones y
recursos van a ser necesarios. Qu inversiones dependiendo del trabajo a realizar, y qu
tiempo dependiendo de la intensidad de trabajo, deben ser diferenciadas en este contexto.
Loscostesdelamigracinsepuedenclasificarendosgrupos:
Costesdirectos:sonelconjuntodecostesquesepuedentenerencuentaenlafase
deplanificacin.Entreellossepuedenincluirlaslicenciasdelsoftware,loscostes
hardware,losdesoporte,formacinydepersonal.
Costesindirectos:sonaquellosqueaunquedesdeunprincipiopodemospreverlos,
nopodemostasarlos,yaquedependendelarealizacindelprocesodemigracin
y de los errores que se produzcan en dicho proceso. Entre ellos podemos incluir
los costes de mantenimiento, de seguridad, de disponibilidad, de inoperatividad
delsistemaydeescalabilidad.
f)Planificacindelseguimientoycontrol
Una vez realizada la planificacin temporal, donde dividimos la migracin en
pequeastareasylasprogramamoseneltiempo,esconvenienteestablecerunseguimiento
de la planificacin para comprobar que se cumplen los plazos y detectar posibles
desviacionesqueponenenriesgolamigracin.Lamaneramssimpleesestablecerunaserie
dehitospuntualesalolargodelamigracinquenossirvanparamonitorizarelprogresode
lamisma.
El objetivo primordial del seguimiento y control es tener controlado en todo
momento el proyecto para poder detectar cualquier desviacin en la planificacin, como
podra ser un retraso en alguna de las tareas y poder tomar las acciones correctivas
45
necesarias. En estas situaciones puede ayudar un plan de contingencia que muestre las
accionesallevaracaboparaacelerarlamigracinomitigarsusconsecuencias.
Otrodelosobjetivosdelplandeseguimientoesverificarqueloscambiosrealizados
en el sistema sean correctos. En lo referente a los tipos de pruebas que podemos realizar
durantelamigracinnosencontramoscon:
Pruebasdecorreccin:Sirvenparatestearelcorrectofuncionamientodelsistema.
Pruebasdeseguridad:Realizarpruebasparacomprobarqueelsistemasiguesiendo
seguro.
Pruebasderendimientoocarga:Elcorrectofuncionamientodelsistemanoeselnico
requisitonecesarioparaconseguirunsistemadecalidad.Porlotanto,tendremos
queasegurarnosdequeelsistemafuncionademanerafluida.
Pruebasdeusabilidad:Esimportantequesesigamanteniendolausabilidaddelsitio.
g)Plandecontingencia
Enelcasodeserunproyectodeenvergadura,enlaquesualtacomplejidadprovoca
que tengamos que tratar con gran cantidad de variables, es importante disear un plan de
contingencia ante problemas y fallos potenciales. Este plan deber establecer una serie de
accionesordenadasyprefijadasqueayudenacorregirunaposibleincidencia.
Aunquerealmentelaexperienciadelapersonaencargadadelamigracinesunade
lasprincipalesfuentesdediagnsticodefuturosposiblesproblemas,esfundamentalrealizar
unesfuerzoparaestimarlospeligrospotencialesdelamigracinydisearunconjuntode
procedimientosparaatenuarloosolventarlo.
46
Como mnimo hemos de disear una estrategia para poder revertir el proceso de
migracinyvolverarestaurarelantiguosistema.Paraelloseaconsejalaimplantacindel
nuevositioenunservidorocarpetadistintaparapodervolveralsistemaanteriorencasode
necesidadylarealizacindecopiasdeseguridad.
Hacercopiasdeseguridadesunatareavitalenelprocesodemigracindeunsitio
web.Esmuyimportanterealizarcopiasdeseguridadperidicamentedelossitiosweb,pero
ms an cuando se va a realizar una migracin. Estas copias nos servirn para restaurar
nuestro sistema antiguo si el proceso de migracin fallase en algn momento, al igual que
tambinnosserntilesalahoradelamigracin.Hayquetenerencuentaqueestascopias
handeestaractualizadasalestadojustoanterioralamigracinparanoperderinformacin
enelprocesosobreposiblescambios.Tambinsedebecomprobarquelascopiassonvlidas
realizando alguna simulacin con ellas para ver que cumplen con su finalidad y que no
existenproblemasquenospuedansurgirenunfuturo.
h)Planificacindelaformacin
Se debe planificar la realizacin de un plan de formacin tanto para los
administradores del sitio web como para los usuarios finales. Por muy completo o potente
queseaelnuevositioweb,silosusuariosfinalesnorecibenlaformacinnecesariaonose
han habituado a trabajar con el nuevo sitio, ste producir rechazo. Por tanto, es muy
importante valorar el plan de formacin y llevarlo a la prctica. Este plan puede llevar
incluido cursos de formacin para los usuarios y los administradores, manuales, jornadas,
etc.
i)Planificacindelaevaluacin
Antes de realizar cualquier migracin hay que definir una serie de pruebas que se
realizarn al sistema una vez migrado. Para realizar una evaluacin adecuada del sistema,
47
estas pruebas no pueden ser improvisadas. Para evitar esta improvisacin, en la fase de
diseo en la que nos encontramos, se definen todas las pruebas a realizar en la fase de
evaluacin,unavezllevadaacabolamigracin.
j)Estrategiasdemigracin
Al inicio de este captulo, en la seccin del marco conceptual sobre la migracin
software, se definan cuatro esquemas de migracin utilizados de manera general en los
procesosdemigracin.Enelcasoconcretodemigracionesdesitiosweb,sepuedendefinir
principalmentelassiguientesestrategiasdemigracin:
Migracinautomatizada
Migracinmanual
Migracinparcialmenteautomatizada
Deestastresestrategiasdemigracinlaopcinmsdeseadaeslaprimera,lamigracin
totalmenteautomtica,peroenlaprcticaexistenmuypocoscasosenlaquestasepueda
realizarporcompleto.Porlogeneral,laopcinmsutilizadaserlamigracinmanualyen
algunaspartesocontenidoslaautomatizacindesta[15].
Acontinuacindescribimoscadaunadeestasestrategias:
Migracinautomatizada
Esta estrategia es preferible a la hora de migrar del sitio antiguo al nuevo.
Necesita poco esfuerzo, por lo que se reducir el tiempo y los recursos necesarios
parallevarlaacabo.
Algunosenfoquesconlosqueestaestrategiasepodrallevaracaboseranlos
siguientes:
48
Utilizarlasinterfacesdeprogramacindeaplicaciones(API)queproporciona
el sistema antiguo y el nuevo, y escribir un programa para transferir el
contenido.
previosantesdelamigracinautomatizadaparaquepuedaservlida:
o
Elsitioactualtienequetenercontenidodecalidad,demodoquesistenolo
es, en la migracin automatizada se pasara directamente el contenido sin
calidadalnuevositio.
Elsitionuevotienequeestarestructuradodemanerasimilaralsitioanterior.
loscasos,yaqueesmuyfrecuentequeelsitioamigrarnotengalasuficientecalidad,
seainconsistenteonoestestructurado.
Migracinmanual
La migracin manual es la ms simple pero a su vez la que ms tiempo y
recursosnecesita.Enlaprcticaescopiarelcontenidodelsitioantiguoypegarloen
49
k)Mejoradelsistema
Aprovechandoelprocesodemigracin,esunabuenaoportunidadelrealizarmejoras
sobreelsistema.Comoelprocesodemigracinrequieredeunconocimientoenprofundidad
delsistemaamigrar,sepuedeaprovecharesteprocesoparaaadirnuevasfuncionalidadeso
para corregir pequeos problemas que hayan sido detectados en el sistema antes de la
migracin.
2.4.3.ProcesodeMigracin
Tras realizar y documentar las fases de anlisis y diseo, hay que llevar a cabo el
proceso de migracin (ver Figura 2.8). Esta fase puede dividirse en varios procesos,
realizando migraciones parciales inicialmente y a continuacin realizar la migracin
completa.
50
Anlisisde
Requerimientos
Diseo
ProcesodeMigracin
Evaluacin
Mantenimiento
Figura2.8.Elprocesodemigracineslatercerafasedelametodologademigracinbasada
entecnologasweb.
2.4.3.1.MigracinParcial
Unamigracinparcialhacereferenciaalamigracindesolounapartedelsitioweba
migrar. Las tareas a realizar en una migracin parcial se pueden agrupar en las fases de
planificacindelamigracinparcial,ejecucinypruebas(verFigura2.9).Losmotivospor
loscualessellevaacaboestetipodemigracin,estnexplicadosenlosobjetivosdelafase
deplanificacindelamigracinparcial.Noesnecesariodocumentardenuevoenestafase
todaslastareasdeanlisisderequerimientosydiseodefinidasenlasetapasanterioresdel
procesogeneraldemigracin,yaquealserunamigracinparcial,nicamentesevaamigrar
unapartedelsistema.
Planificacindelamigracinparcial
Objetivos
Alcancedelamigracin
Cronograma
Ejecucindelamigracinparcial
Pruebas
Figura2.9.FasesdelamigracinparcialdentrodelProcesodeMigracin
51
a)Planificacindelamigracinparcial
Lafasedeplanificacinenlamigracinparcialcontieneladefinicindelosobjetivos
aconseguirconestamigracin,elalcancedelaaplicacindelaspruebasysucronograma.
Objetivos: El motivo de realizar una migracin parcial en vez de ejecutar
directamente la migracin completa al nuevo sitio web se puede argumentar
mediantelossiguientesobjetivos:
o
Pruebahacialaopininconvincentedelequipo:Sidirectamenteserealizala
migracinsobreelnuevositioweb,puedesermuyprobablequeloserroresse
sucedandemaneramaximizada.Primerosedebeconfirmarquelaestrategia
general a seguir, incluida la tecnologa, la configuracin, los procesos y el
personal,estndeacuerdoconlavisininicialdelproyecto.Duranteestafase
previaalamigracintotalhaciaelsitiodefinitivo,setieneanlaposibilidad
de reconfigurar algunas especificaciones iniciales que se detecten que en la
prctica no son correctas o incluso aadir o descartar algunos requisitos
preestablecidos. La creacin del sitio en pruebas tambin puede servir para
mostrar a algunas personas que no hayan alcanzado a tener una visin
convincentedelproyecto.Deestemodo,conunejemploprcticodelproceso
o resultado similar al final, puede ser ms fcil alcanzar esta visin
convincente.
Pruebadeprcticamentetodoslosaspectosofuncionalidadesdelamigracin:
Unapruebapilotoesunprocesodemigracindeunsitioweb,noessloun
producto de usar y tirar. Sobre este sitio piloto se pueden probar
prcticamentetodaslasfuncionesoaspectosquesellevarnacabodespus,
enelprocesodemigracincompleto.Sobreelsitiopilotopodemosprobarla
automatizacin de la migracin, el proceso manual de la migracin, la
52
Estimacindelosnivelesdeesfuerzo:Otroaspectomuyimportanteateneren
cuenta en el proceso de migracin, es la estimacin del esfuerzo necesario
parapoderrealizarla.Enestaestimacinsepretendesaberculessonlostipos
de contenidos y las funcionalidades necesarias para la implementacin del
sitioyconestainformacin,concretarcuntoesfuerzodepersonaltcnico y
notcnicosernecesarioencadacaso.
Alcancedelamigracinparcial:Enlaplanificacindelamigracinparcialsedebe
especificar claramente qu partes del proyecto global van a ser integradas o
probadas y cules no. En concreto, hay que poner atencin en las reas de
contenido,funcionalidad,integracineinterfaces.Juntoconestaespecificacin,se
debehacerunseguimientoconcretosobreelesfuerzoqueenlaprcticaconlleva
realizarcadafasedelproyectopiloto,yaquepodrserextrapoladoparaobtenerel
esfuerzototalrequeridoenlamigracincompletadelsitio.
53
Cronograma:Alahoradedefinirelcronogramaparallevaracaboelprocesode
realizacin delamigracinparcial,hayquetenerencuentadosaspectosbsicos
parasucorrectadefinicin:
o
Comounodelosobjetivosesencontrarpuntosdemejorayrediseoalahora
de realizar la migracin total, es muy importante en la planificacin del
cronogramatenerencuentaeltiemponecesariopararealizardichoscambios.
Apriorinoesposiblesaberexactamentedequtemporalidadsetrata,yaque
estolodefinirlacantidaddepeticionesocomentariosrealizados,perosino
se cuenta con el tiempo necesario para realizar los cambios porque no se ha
previsto de tiempo suficiente en el cronograma, uno de los objetivos
principalesdeestafasenohabrsidosuperado.
Hayquetenerclarolaconsideracindelalcancedelamigracinparcial.Nose
podr considerar la velocidad de desarrollo del proyecto piloto para
extrapolarloalamigracindelsitiototal,considerndolocomounapequea
partedeste,perosesvlidocomopruebarealdelastecnologasnecesarias
autilizar,losdiferentesprocesosylasconclusionesqueseanobtenidas.
b)Ejecucindelamigracinparcial
Es en este momento cuando se lleva a la prctica la planificacin realizada en el
apartadoanterior.Sedebetenerencuentatantolosobjetivos,elalcancedelamigracinyel
cronogramapropuesto.
54
c)Pruebas
Unavezquelamigracinparcialdelsitiowebsehallevadoacabo,hayqueevaluar
elsitiocreadoconlamigracinparcialparadetectarposiblescambiosquehayaquerealizar
sobre el plan de migracin. Si se ha detectado algn problema o error en el plan de
migracin,eselmomentoderedefiniresteplanparaevitarlosenlamigracincompletayde
estemodoafrontarcongarantaselprocesocompletodemigracin.
Ademsdeevaluarlosaspectosofuncionalidadesdelamigracin,hayqueevaluar
igualmente la estimacin de los niveles de esfuerzo y los comentarios y opiniones sobre el
proceso.
2.4.3.2.MigracinCompleta
Enlamigracinparcial,alrealizarlamigracinsobreunapartedelsitioweb,sehan
definidounaseriedefasesytareasconcretassloparaesamigracinparcial.Lamigracin
completasrealizaelprocesodemigracinensutotalidad.Portanto,lasdiferentesacciones
a llevar a cabo en la migracin completa, son las descritas anteriormente en las fases de
anlisisderequerimientosydiseo(verFigura2.10).Enestasfasesyahansidodescritoslos
objetivosytareasarealizar.
55
AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
ProcesodeMigracin
Migracinparcial
Migracincompleta
Evaluacin
Mantenimiento
Figura2.10.Esquemadelametodologademigracin
Cuantomsdetalladayprofundahayasidolafasedeanlisisderequerimientosyde
diseo,mayorprobabilidaddexitoymenornmerodeincidenciasseencontrarnenesta
fase. A continuacin se describen las tareas que se ejecutan en esta fase, indicando la
secuenciaquedebellevar:
Antes de realizar cualquier tipo de tarea, habr que llevar a cabo una copia de
seguridad del sistema para poder revertir el proceso de migracin y volver al
estado inicial en caso de ser necesario por muy diversos motivos. Esta copia de
seguridadestdefinidaenelplandecontingenciaenlafasedediseo.
56
Una vez realizada la copia de seguridad, se realiza la limpieza del contenido del
sitio web que se desea migrar, siguiendo la planificacin realizada en la
planificacindecontenidoenlafasedediseo.Secomentabalanecesidaddedividirel
contenidodelsitiowebparaprescindirdelquenofuesenecesariomigrardebidoa
suredundancia,asucaducidadoacualquiernecesidaddecalidad.
Elsiguientepasoeslaejecucindelaestrategiademigracindescritaenlafasede
diseo, con la cual se obtendr como resultado el sistema ya migrado. Todos los
pasosytareasrealizadasenestaetapadependendelaestrategiaseleccionadayel
tipo de sistema migrado. Todos estos pasos deben ser documentados, indicando
lasdiferentesincidenciaspresentadasoanotacionesquesecreanconvenientes.
Una vez realizada la migracin se puede llevar a cabo una serie de mejoras del
sistemasihansidodefinidasensucorrespondienteetapaenlafasedediseo.
2.4.5.Evaluacin
Alllegaraestafasedelproceso,lamigracinyahasidoejecutada,peroelprocesode
migracinnosepuededarporfinalizado.Esenestemomentocuandosellevaalaprctica
diferentes planificaciones realizadas. Una de las tareas en la fase de planificacin, era la
planificacin delseguimientoy control.Estatareasevarealizandosobre elsistemadurantela
ejecucin de la migracin, pero es en la fase que nos encontramos cuando se evalan los
resultadosobtenidos.Lasdiferentesaccionesarealizarparamedirelniveldecumplimiento
de los objetivos iniciales propuestos y el correcto funcionamiento, han sido definidas en la
planificacindelaevaluacinenlafasedediseo.Enesteprocesosellevanalaprcticalas
pruebas indicadas para corroborar el xito de la migracin o subsanar los errores
encontrados(verFigura2.11).
57
Anlisisde
Requerimientos
Diseo
Procesode
Migracin
Evaluacin
Mantenimiento
Figura2.11.Lacuartafasedelametodologademigracinbasadaentecnologaswebesla
evaluacin.
2.4.6.Mantenimiento
Una vez finalizada la migracin y comprobado que se ha realizado con xito
mediantelaevaluacin,eselmomentodedefiniryejecutarunaseriedetareasparaqueel
sitio web siga siendo funcional y actualizado, y no caiga en desuso por falta de
mantenimiento.Esunatareaquepuedeconllevarmuchotrabajo,dependiendodelsitio,pero
esmuynecesaria(verFigura2.12).
Anlisisde
Requerimientos
Diseo
Procesode
Migracin
Evaluacin
Mantenimiento
Figura2.12.Elmantenimientoeslaltimafasedelametodologademigracin
Una de las tareas es definir la persona o personas que asumen a partir de ese
momentolaadministracindelsitio,contodaslastareasqueelloconlleva,comopuedenser
laactualizacindecontenidos,larealizacindecopiasdeseguridad,laseguridaddelsitio,
etc.
58
Otratareaarealizaresejecutarelplandeformacindefinidoenlafasedediseo.Por
muycompletoypotentequeseaelnuevositio,silosusuariosfinalesnorecibenlaformacin
necesariasobrenuevosusosonuevasfuncionalidadesdelnuevositio,stepodraproducir
rechazoconlaconsecuenteprdidadeintersporelsitioquellevaraabajarelnmerode
usuarios que lo utilicen. Por tanto, es muy importante llevar a la prctica el plan de
formacinrealizado.
59
60
Captulo3
ProcesodeMigracinparaunCMS
61
62
Enestecaptulo,serealizaunapropuestademetodologademigracinaplicadaaun
sistemadegestindecontenidos(CMS).ParaentenderquesunCMS,enlaprimeraparte
sedefineelconceptodesistemagestordecontenidos,serealizaunabreveintroduccinasu
historia y se describen sus ventajas respecto a otros sistemas de desarrollo web. En la
segundaparte,serealizalapropuestademetodologa,adaptandoelprocesodemigracinal
casoconcretodeCMS.
3.1.PresentacindelProblema
3.1.1.QuesunCMS?
Un sistema de gestin de contenido (Content Management System, en ingls,
abreviadoCMS)esunsoftwarequeseutilizaparafacilitarlagestindesitiosWeb,yaseaen
InternetoenunaIntranet.Consisteenunainterfazquecontrolaunaovariasbasesdedatos
donde se aloja el contenido del sitio, y que adems permite independizar el contenido del
diseo.Deestaforma,esposibleadministrarelcontenidoydarlealsitioundiseodistinto
encualquiermomentoysintenerquedarleformatoalcontenidonuevamente[16].
Este sistema, mediante una interfaz grfica normalmente intuitiva, permite generar
cdigo en lenguaje de programacin, sin necesidad de programar directamente ninguna
lnea.LosCMSutilizanunabasededatosparaalmacenarelcontenido(losmens,eltextoy
loselementosdinmicos)yunaplantillaqueservirparadefinirlosaspectosdediseodel
sitio. El resultado final es un sitio web totalmente funcional y sobre el que se tendr el
controltantoenloscontenidoscomoenelprocesodediseo.
EnunCMSaniveldeestructurasedistinguen3capas.
Capadelabasededatos:Labasededatostienealmacenadotodoelcontenidoquese
ha escrito en la web, as como muchos de los parmetros de configuracin,
63
Figura3.1.LogotiposdelosCMSmsutilizadosenlaactualidad.
64
Figura3.2.PartepblicaofrontenddeunsitiowebenDrupal
Parte web privada: Desde cualquier lugar con conexin a Internet y un navegador
con un usuario y contrasea podemos acceder a la parte interna del gestor de
contenidos (ver Figura 3.3). Desde esta parte, segn el perfil que tengamos, se
podr actualizar el contenido de la pgina web pblica, modificarlo o crear
contenido nuevo. Si se tiene el nivel de permisos adecuado para ello, se podr
tambin, desde un panel de control, cambiar configuraciones del sitio web, el
diseo,gestionaralosusuariosdelsistema,etc.
65
Figura3.3.ParteprivadaobackenddeunsitiowebenWordPress
Acontinuacinexponemosalgunasdelascaractersticasmsimportantesquehacen
tilynecesarialautilizacindeunCMS:
Inclusin de nuevas funcionalidades en la web: Esta operacin puede implicar la
revisin de multitud de pginas y la generacin del cdigo que aporta las
funcionalidades. Con un CMS eso puede ser tan simple como incluir un mdulo
realizadoporterceros,sinqueesosupongamuchoscambiosenlaweb.Elsistema
puedecreceryadaptarsealasnecesidadesfuturas.
Mantenimiento de gran cantidad de pginas: En una web con muchas pginas hace
faltaunsistemaparadistribuirlostrabajosdecreacin,edicinymantenimiento
conpermisosdeaccesoalasdiferentesreas.Tambinsetienenquegestionarlos
metadatos de cada documento, las versiones, la publicacin y caducidad de
pginasylosenlacesrotos,entreotrosaspectos.
66
67
Figura3.4.Ejemplodegestordeportales
68
Figura3.5.Ejemplodeblog
Gestin de foros: Permiten discusin en lnea de usuarios en torno a un tema de
inters comn. Entre los ms populares estn phpBB (www.phpbb.com) y SMF
www.simplemachines.org)(verFigura3.6).
Figura3.6.Ejemplodegestindeforos
Wikis:Permitencrearcontenidosdemaneracolaborativa.Suspginaspuedenser
editadaspormltiplesusuariosy,adiferenciadelosblog,lainformacinnoest
69
Figura3.7.Ejemplodewiki
Figura3.8.Ejemplodegestindecomercioelectrnico
70
Figura3.9.Ejemplodegestindeelearning
3.1.2.Ventajas
Un gestor de contenidos Web permite a un usuario actualizar el contenido de una
pginaweb,demanerafcileintuitiva,sinnecesidaddetenerconocimientoseninformtica
y desde cualquier parte del mundo donde se tenga acceso a Internet; evitando as la
dependenciadetercerosparasumantenimiento.
Algunasdelasprincipalesventajasdelautilizacindeungestordecontenidosson
lassiguientes[16]:
Bajo costo de mantenimiento: Con un gestor de contenidos, se tiene total control
sobre el contenido de su sitio actual. No requiere de gastos extras de
71
72
3.1.3.Historia
A principios de los aos noventa, el concepto de sistemas de gestin de contenidos
era desconocido. Algunas de sus funciones se realizaban con aplicaciones independientes:
editoresdetextoydeimgenes,basesdedatosyprogramacinamedida.
Los primeros sistemas de administracin de contenidos fueron desarrollados por
organizaciones que publicaban una gran cantidad de contenido en Internet, y necesitaban
continuasactualizaciones;comorevistasenlnea,peridicosypublicacionescorporativas.
Yaenelao1994IllustraInformationTechnology(compaadedicadaalasbasesde
datos)utilizabaunabasededatosdeobjetoscomorepositoriodeloscontenidosdeunaweb,
con el objetivo de poder reutilizar los objetos y ofrecer a los autores un entorno para la
creacin basado en patrones. La idea no fue muy aceptada por los usuarios, por lo que la
partedelaempresaenfocadaalaWebfuecompradaporAOL(AmericaOnline),mientras
que Informix adquiri la parte de bases de datos. RedDotes una de las empresaspioneras
que empez el desarrollo de un gestor de contenidos en el ao 1994. Y a finales del ao
siguientepresentaronsuCMSbasadoenunabasededatos.
EntrelosCMSdecdigoabiertounodelosprimerosfueTypo3(www.typo3.org),que
empezsudesarrolloenelao1997,enpalabrasdesuautor,KasperSkrhj,antesdeque
eltrminogestindecontenidosfueraconocidosobradamente.
PHPNuke(www.phpnuke.org),laherramientaquepopularizelusodeestossistemas
para las comunidades de usuarios en Internet, se empez a desarrollar en el ao 2000. La
primera versin supuso tres semanas de trabajo al creador, reescribiendo el cdigo de otra
herramientallamadaThatware.
Hoyendaexistensistemasdesarrolladosensoftwarelibreypropietario.Enambos
casos es necesaria una implementacin para adaptar el gestor de contenidos al esquema
73
3.2.PropuestaMetodolgicaparaMigracindeCMS
En el captulo 2, se realiz un estudio sobre una metodologa de migracin clsica
paraunprocesodemigracingenrico.Basndonosenlarevisindelametodologaclsica
citadajuntocondiferentesprocesosymetodologasutilizadosparalamigracindesistemas
hacia software libre, se ha descrito una metodologa de migracin basada en tecnologas
web.Enelcaptulo4,sepretenderealizarlamigracindeunaaplicacinwebconsistenteen
un sistema de recomendacin de restaurantes georreferenciados desarrollada sobre un
sistema gestor de contenidos, concretamente, sobre Joomla (www.joomla.org). Al estar
desarrollada sobre un gestor de contenidos, en esta seccin realizamos una propuesta de
metodologa de migracin para CMS, la cul ser la utilizada para la migracin del caso
propuesto. Esta propuesta estar basada en la metodologa de migracin sobre tecnologas
web,adaptndolaalcasoconcretodeCMS.
A continuacin, se describen las tareas localizadas en las fases de anlisis de
requerimientosydiseodelametodologa,adaptndolasdemaneraconcretaalossistemas
degestindecontenidos,debidoalapeculiaridaddeestos.
74
Elrestodelasfasesdelametodologademigracinbasadaentecnologasweb,como
sonelprocesodemigracin,laevaluacinyelmantenimiento,sonvlidasparalamigracin
deunCMS.EnlaFigura3.10semuestranlasfasesquevanaserdescritasacontinuacin:
AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
Figura3.10.Localizacindelasfasesadaptadasalametodologademigracinpara
CMS
3.2.1.AnlisisdeRequerimientos
a)Justificacindelamigracin
A la hora de justificar una migracin de un CMS, los motivos suelen ser muy
similares. Con frecuencia se realiza la migracin para incorporar las novedades que las
versiones ms actuales nos ofrecen, a la vez que para prevenir de eventuales incidencias o
75
problemasdeseguridadquepuedensurgirsinoseactualiza.Tambinserealizaelproceso
demigracinparapasardelsistemaactualaotrosistemadegestindecontenidosdistinto,
poradaptarsestemejoranuestrasnecesidades,mejorarlaproductividad,laseguridad,etc.
b)Objetivos
LosobjetivosaconseguirconlamigracindeunCMSsonsimilaresalosdescritosen
el proceso de migracin de tecnologas web. Entre estos objetivos estn el incremento de
seguridad de la plataforma web, la mejora de su productividad, el aumento de las
funcionalidadesylareduccindecostes.
c)Recoleccindeinformacin
Enlarecoleccindeinformacintenemosqueobtenerlosdatosnecesariosparahacer
uninventariosobreelcapitalhumanodelcualsedisponeparallevarlaacabo,aligualque
los recursos hardware y software, tanto los actuales como sobre los que se realizar la
migracinenelcasodeserdistintos.
Elinventarioderecursoshumanosserealizaparaconocerdequpersonalsedispone
paradarsoportealsistematantodeadministracincomodeasistenciaalmismo,ytambin
parallevaracabolamigracin.Laplanificacinderecursoshumanosparalamigracinse
realizarenlafasedediseo.
Elinventariotantohardwarecomosoftwareserealizaparatenerlacertezadequeel
sistema, una vez migrado, sea compatible totalmente con el hardware disponible. Cuando
migramossobreversionesmsactualesdeunCMS,losrequisitosmnimosparaelcorrecto
funcionamiento de ste pueden cambiar. Por lo tanto, en el inventario hay que describir
76
culessonlosrequisitosmnimosdefuncionamientoparaelnuevosistema,yculessonlas
caractersticasdenuestrohardware.
d)Sensibilizacininstitucionalydelpersonal
Este apartado de la metodologa de migracin sobre CMS es igual a la migracin
sobretecnologaswebdescritoanteriormente.
3.2.2.Diseo
a)Definicindelproductoaobtener
TratndosedemigracinsobreCMS,aldefinirelproductoaobtener,hayqueindicar
hacia qu CMS se migrar y su versin. Como consecuencia de esta migracin hacia un
nuevo sistema, se obtendrn una serie de nuevas caractersticas o ventajas respecto al
anteriorquehabrqueespecificar.
b)Planificacinderecursoshumanos
LaspersonasencargadasdellevaracabolamigracindeunCMS,tienenquetener
granconocimientosobresufuncionamiento,laestructuradearchivosdelaquesecompone,
ellenguajedeprogramacinconelqueestdesarrolladoyelsistemadebasededatosque
utiliza. En el caso de proyectos de gran tamao, estos conocimientos estn distribuidos en
diferentespersonasqueseencarganconjuntamentedelamigracin.Estosdiferentesperfiles
necesariosderecursoshumanos,habrqueespecificarlosenestaetapaparaasegurarnosque
setienelaformacinyconocimientosnecesariosparallevaracabolamigracin.Elrestode
perfiles necesarios sern los mismos que en el proceso de migracin basado en tecnologas
web.
77
c)Planificacintemporal
Dentro de la planificacin temporal, adems de definir las etapas de las que se
componecualquierprocesodemigracinsobretecnologasweb,hayquedefinirlasetapas
propiasdelprocesodemigracindelCMS.Estasetapassonlarealizacindeunacopiade
seguridad del sistema, la limpieza del estado actual del sistema y la ejecucin de la
migracin.
d)Planificacindemigracindecontenido
AntesderealizarunamigracindeunCMShaciaotroCMSdistinto,oelmismopero
enunaversindiferente,hayquetenerencuentaunaseriedepuntosparaverlaviabilidad
delamigracinylaplanificacindestaensucaso.Unadelastareasquehayquerealizar
en la fase de planificacin de migracin de contenido en un CMS, consiste en ver la
disponibilidad de toda la funcionalidad del CMS actual en la versin nueva. Esto hace
referencia a que en los CMS es usual aadir extensiones o mdulos externos al sistema
desarrollados por terceros para ampliar la funcionalidad de estos. Existen extensiones o
mdulos con diferentes funcionalidades como la gestin de tiendas virtuales, mensajera
interna, aadir comentarios a los artculos, organizadores de imgenes, de sonido, de
archivos,plantillasparacambiarlaaparienciadelsitio,paraenlazarelCMScondiferentes
redessociales,etc.UnadelascaractersticasquediferenciaaunCMSdeotroeselnmeroy
la calidad de estas extensiones disponibles. Por tanto, antes de realizar la migracin se
deber realizar un inventario de las extensiones que actualmente utiliza el sitio, y ver si
existen esas extensiones para la nueva versin del CMS. En caso de no existir, se realizar
unabsquedasobreposiblesextensionesquerealicenesasmismasfunciones.Elhechodeno
poder disponer en la versin nueva de algunas determinadas extensiones que sean
indispensables para el sitio, podr declinar la intencin de realizar la migracin en este
momento,condicionndolaaladisponibilidaddeesaextensin.Otraopcindisponibleesel
78
desarrollo propio de una extensin que realice la funcin deseada, e instalarla en la nueva
versindelCMS.
Por tanto, antes de comenzar una migracin de un CMS, habr que hacer un
inventario de todas las extensiones o mdulos que se estn utilizando actualmente y
comprobar su disponibilidad en la nueva versin. Para ello, en Internet hay diferentes
repositoriosdeextensionesdesdeloscualessepuedenconsultarladisponibilidadyrealizar
ladescargaensucaso.
Al igual que se realiza la comprobacin de disponibilidad de las extensiones o
mdulosactualesparalanuevaversin,habrquerealizarsimilarprocesoparalasdistintas
plantillasotemasqueestnconfiguradasactualmenteenelsitio.Laplantillaotemadeun
CMSeslaencargadadelapresentacindeloscontenidosdelsitio.Demanerasimilaralas
extensiones, en un CMS podemos instalar o desinstalar diferentes plantillas o temas para
modificar la presentacin del sitio, sin tener para ello que realizar ninguna modificacin
sobreelcontenido.Portanto,cuandosevayaarealizarunamigracin,debemosasegurarnos
quelaplantillaactualseacompatibleconlanuevaversin.Sinolofuese,habraqueobtener
lamismaplantillacompatibleconlaversindeseadaoinstalarunaplantilladiferente.
e)Planificacineconmica
En el caso de migraciones sobre CMS, hay que aadir a los costes usuales de la
migracin,elcostedelalicenciadelsistemadegestindecontenidosyelsistemadegestin
de la base de datos. Se puede considerar la gran cantidad de CMS disponibles que son
software libre y con caractersticas muy avanzadas, de modo que no habra que sumar los
costesdeestaslicenciasalaplanificacin.
79
f)Planificacindeseguimientoycontrol
Este apartado de la metodologa de migracin sobre CMS es igual a la migracin
sobretecnologaswebdescritoanteriormente.
g)Plandecontingencia
Elplandecontingenciasedefinicomounplanquedebadeestablecerunaseriede
accionesordenadasyprefijadasqueayudasenacorregirunaposibleincidenciaenelproceso
de migracin. En este caso, vamos a describir el proceso de realizacin de copias de
seguridadenunCMS.Lascopiasdeseguridadsonunosdelosprocesosmsimportantesen
todo proceso de migracin. Sirven para asegurarnos que si por algn motivo, una vez
comenzadoelprocesodemigracin,stenosepuedefinalizar,siempreestardisponiblela
opcin de volver al estado inicial. Existen diversos mtodos y herramientas para realizar
copias de seguridad en los CMS. Tambin se pueden realizar de manera mecnica o
automtica.
Comosehacomentadoanteriormente,entodoCMSestndiferenciadaslascapasde
basededatos,deprogramacinydediseo.Porlotanto,parahacerlacopiadeseguridad
hayquerealizarunacopiadecadaunadeestascapas.
En muchos CMS existen extensiones o mdulos que realizan esta tarea de manera
automtica,biensearealizandoelrespaldodeunacapaenconcretoylastresalavez.Para
ello basta con instalar esta extensin en el CMS y seguir los pasos indicados por dicha
extensin para su correcta ejecucin. Una vez realizada, generar uno o varios ficheros de
respaldoquesepodrnutilizar,encasodesernecesario,paravolverelCMSalestadoinicial.
Otra forma de realizar las copias de seguridad del CMS es de manera manual, sin
basarnos en ninguna extensin ni mdulo. Para ello habr que seguir unos pasos para su
80
correcto funcionamiento. Las capas de programacin y diseo estn formadas por los
diferentes ficheros que componen la estructura del CMS. Para realizar la copia de estos
ficheros, directamente se realiza una copia en local mediante un cliente ftp de todas las
carpetasyarchivosqueestndentrodelacarpetaqueagrupatodoelCMS.Paraobtenerla
copiadelacapadebasededatos,habrquerealizarunaexportacindetodalainformacin
contenidaenlabasededatosdesdeungestordebasededatos.Ungestormuyutilizadoes
phpMyAdmin(www.phpmyadmin.net).
Traslarealizacindeestosprocedimientosdecopiasdeseguridad,tantorealizados
de forma automtica como manual, hay que confirmar la correcta ejecucin de los mismos
para asegurarse que la copia se ha realizado correctamente y no tener posibles problemas
duranteelprocesodemigracin.
h)Planificacindelaformacin
Para conseguir que el sistema una vez migrado contine siendo vlido
funcionalmente, hay que definir un plan de formacin para los administradores de CMS y
los usuarios finales. Al realizar una migracin hacia una nueva versin de un CMS u otro
distinto, son bastantes las caractersticas diferentes que se presenten dependiendo de la
versin. Estas nuevas funcionalidades tienen que estar en conocimiento de los
administradoresylosusuariosquelorequieranparaobtenerelmximoprovechodelnuevo
sistema. Para ello, se pueden realizar cursos de formacin sobre las nuevas materias, tanto
paraadministradorescomousuario,aligualqueconmanualesdesarrolladosparatalfin.
i)Planificacindelaevaluacin
En esta apartado definimos las diferentes pruebas que se van a realizar sobre el
sistema una vez migrado para comprobar que se ha llevado a cabo la migracin
81
j)Estrategiasdemigracin
Enelprocesodemigracinbasadoentecnologaweb,sedefinantresdiferentestipos
deestrategiasdemigracin:migracinautomatizada,manualoparcialmenteautomatizada.
En el caso de los sistemas gestores de contenidos, realizar una migracin manual
llevara mucho tiempoy esfuerzo,ya que habra que modificar manualmente tanto la base
de datos como el sistema de ficheros, para adecuarse a la nueva versin. Una migracin
automatizadaserlaquerealicedemaneraautomticatodalamigracindelabasededatos
ylosficherosalanuevaversinporcompleto,sintenerqueintervenirennada.Ansiendo
ms viable que la manual, en la prctica habr muchos datos que no migren
automticamente, como datos de extensionesexternas, por lo que stos habr que hacerlos
de forma manual. Como estrategia ms comn para la migracin de CMS, se utiliza la
migracinparcialmenteautomatizada.Sebasaenlamigracinautomatizadadeciertaparte
del sistema gracias a extensiones programadas para ello, y el resto se realiza de manera
manual, siguiendo las especificaciones facilitadas por el desarrollador del sistema en cada
caso.
k)Mejoradelsistema
Al igual que en la migracin basadas en sistemas web, se puede aprovechar el
proceso de migracin de un CMS para aadir nuevas funcionalidades o mejoras en el
sistema.Enestaetapasedescribencadaunadelasmejorasquesedeseanllevaracabo.
82
Captulo4
MigracindelSistemade
RecomendacindeRestaurantes
REJAenelCMSJoomla
83
84
85
comosuposicinenelplano.Deestaformasepretendemejorarlaexperienciadelturista,de
maneraquesesientatancmodoenelterritorioquevisitacomoenelsuyopropio.
Elsistemapermiteelregistrodeusuarios,laobtencindelosdatosalmacenadosenel
perfil del usuario, la modificacin de estos datos, el acceso a la informacin de los
restaurantes, realizar puntuaciones sobre stos, modificar dichas puntuaciones, obtener
recomendaciones de restaurantes, etc. Por otro lado, tambin permite geolocalizar los
restaurantes, obtener un camino mnimo necesario para llegar a un restaurante desde la
direccindelusuario,calcularlarutaentredospuntos,realizarconsultassobreelmapa,etc.
Figura4.1.Aplicacinwebparalarecomendacinderestaurantes
86
Figura4.2.Aplicacinwebparalageorreferenciacinygeocodificacinderestaurantes
4.2.IntroduccinalCMSutilizado
4.2.1.DefinicindeJoomla
Joomla [18] es un sistema de gestin de contenidos que permite construir sitios y
aplicacioneswebfcilmente.Estbasadoentecnologasweb(comoXHTML,CSS,JavaScript
y PHP) y vlido tanto en Internet como para intranets. En la Figura 4.3 se muestra su
logotipo.
Figura4.3.LogotipodelCMSJoomla.
87
EstprogramadoenellenguajePHPbajolalicenciaGNUGPL,yutilizaunabasede
datosMySQLparaalmacenarelcontenidoylosparmetrosdeconfiguracindelsitio(ver
Figura4.4).
El CMS Joomla se puede conseguir gratuitamente en Internet. Su gestin se lleva a
caboatravsdeunainterfazweb,portanto,esfundamentalcontarconunnavegadorweb
instalado.
Al ser Joomla una aplicacin web, funciona en servidores http. Esta caracterstica
permitequesepuedautilizarencualquierequipoconcualquiersistemaoperativoinstalado.
Laadministracinestbasadaenunagestinonlinedecontenidos,estoquieredecir
que para actualizar los contenidos de un sitio web basta con utilizar un navegador web
conectadoaInternet.
Joomla se puede utilizar tanto en un servidor remoto como en un equipo local. Un
equipodomsticopodrserconfiguradoparaqueactecomounservidorlocalysepueda
probar as todas las funcionalidades de la herramienta antes de colocar sus archivos en el
servidorquealojaelsitio.Parapoderutilizarlocomoservidorlocal,sehadetenerinstalado
algunaaplicacinqueconviertaelordenadorenunservidorweb,comoApache.Elservidor,
tanto el local como en remoto, debe disponer de MySQL y PHP. Si es remoto adems es
necesariounclienteFTPparalasubidadelos ficherosnecesarios.Existenaplicacionesque
integran estos servicios para configurar un servidor local, como Wamp
(http://www.wampserver.com), Xampp (http://www.apachefriends.org/es/xampp.html) o
EasyPHP
(http://www.easyphp.org)
para
ambientes
Windows,
Lamp
(http://www.lamp.es)paraambientesLinux.
88
LosarchivosqueconstituyenlaestructuradeJoomlayquesedescargandeInternet
estn comprimidos, por tanto, ser necesario tambin un compresor/descompresor de
archivosZIP.
Figura4.4.GrficodelfuncionamientodeJoomla
4.2.2.Estructura
Comosehacomentado,Joomlaestcompuestoporunaovariasbasesdedatosyun
conjuntodearchivosycarpetas.EntenderlaestructuradeJoomlayconocerculessonsus
principalesficherosydirectoriosayudaaunamejorcomprensindesufuncionamiento.En
la Figura 4.5 se muestra la estructura de archivos y carpetas una vez descargado y
descomprimido.
89
Figura4.5.EstructuradearchivosycarpetasdeJoomla1.5
Lafuncionalidaddecadaunadeestascarpetasseexplicabrevementeacontinuacin:
Administrator: Contiene todos los archivos necesarios que conciernen a la
administracindesdeelbackenddeJoomla.
Cache: Almacena los archivos necesario para utilizar el mtodo cach, si ste est
habilitadoenelsitioweb.
Components: Contiene las carpetas con cada uno de los componentes que estn
instalados en el sitio, el nombre de estas carpetas es generalmente com_nombre
decomponente.
Images: Contiene los iconos base que utiliza la plantilla de Joomla, para algunas
vistas.
Includes: Es una de las carpetas que contienen los archivo esenciales que utiliza
Joomlacomopartedesuframework.
Installation: Contienen los archivos necesarios para la instalacin del sitio por
primeravez;unavezseinstalalaplantilladeJoomla,estacarpetasedebeborrar.
90
Languages:AlmacenalosarchivosdelosdiferenteslenguajesquesoportaJoomla.
Libraries:AlmacenalaslibrerasbsicasdelframeworkdeJoomla.
Logs:Siestconfiguradoalmacenaloseventosquesegeneraneneladministrador.
Media: Almacena las imgenes que se suben por medio del administrador de
medios.
Modules: Almacena los mdulos que se encuentran instalados en el sitio, estos se
encuentranensubcarpetasyllevanelnombremod_nombredelmodulo.
Plugins:Almacenalospluginsinstaladosenelsitio.
Templates:Almacenalassubcarpetasconlostemplatesinstaladosysusrespectivos
recursos.
Tmp: Carpeta utilizada durante la instalacin de los mdulos, componentes,
pluginsotemplates.
4.2.3.Funcionamiento
Sufuncionamientosellevaacabograciasasusdosprincipalescomponentes:
LabasededatosMySQL:Enellasealmacenatodalainformacinenunaestructura
detablasdentrodelamisma.
Las pginas PHP: Son las pginas implementadas en dicho lenguaje de
programacinquerealizanconversindedatos,queresidenenlabasededatosen
pginas web completas, interpretables por los navegadores y totalmente legibles
porlosusuarios.
91
Figura4.6.ZonaprivadadeadministracindeJoomla.
Gestindelosmensdelsitioweb:Desdeelpaneldeadministracinsepuedencrear
y organizar todos los elementos de los mens del sitio web, crendolos,
editndolos y habilitndolos o deshabilitndolos para un determinado tipo de
usuario(verFigura4.7).
92
Figura4.7.Gestindelosmensdelsitioweb
Gestin de contenidos de la web: Tambin desde el panel de administracin se
puedencrearyorganizarlosartculosdecontenidodelawebencategoras,para
sufcilcreacin,modificacinoeliminacin(verFigura4.8).
Figura4.8.Gestindecontenidosdelaweb
Gestindecomponentesyextensiones:Joomlaesunaherramientamodular,escalable
yconfigurablesegnlasnecesidades.Paraello,poseegranvariedaddeplantillas,
idiomas,componentes,mdulos,plugins,etc.(verFigura4.9).
93
Figura4.9.Gestindecomponentesyextensiones
Joomlapermitelatotalpersonalizacinyadecuacindesufuncionamientoauntipo
de sitio web particular, una vez instalado el paquete bsico se pueden ir agregando ms
funcionalidades,deacuerdoalgradodecomplejidaddelsitiowebqueseestdesarrollando.
Paraampliarloexistenextensionesgratuitasycomercialesquepuedendescargarsey
probarse,aunqueavecespuedanserincompatiblesentresoconlaversindeJoomlaquese
haya instalado. Estas extensiones pueden ser componentes, mdulos, plugins y plantillas.
Permiten instalarse, configurarse y personalizarse desde el propio panel de administracin
deJoomla
Algunosejemplosdelasfuncionalidadesdelasextensionesdisponiblesson:
Realizaryrestaurarcopiasdeseguridad
Crearygestionargalerasdeimgenes
94
MostrarmapasdeGoogleenelsitio
Crearunmapadelsitioutilizandolaestructurademens.
Creacindeboletinesdenoticias
Creacindeformularios
Etc.
4.2.4.VentajasyCaractersticas
DentrodelasprincipalesventajasdeutilizarJoomlaseencuentran:
La publicacin de contenidos se organiza en categoras permitiendo crear tantas
pginascomosenecesitenyorganizarlasportems.
Sepuedendefinirtantosmensysubmenscomosenecesiten.
Laedicindeloscontenidosserealizademaneramuyfcileintuitiva,graciasa
loseditoresWYSIWYGqueincorpora(WhatYouSeeIsWhatYouGeteningles,
loquevesesloqueobtienes).
Existen muchas extensiones adicionales, las que permiten ampliar las
posibilidadesycaractersticasdeJoomla.
JoomlapuedeinstalarseenservidoresWindows,LinuxyMac.
Graciasasusistemadeplantillasesposiblesepararlapresentacindelcontenido.
Estasplantillasseencargandedefinirelaspectoestticodelawebyelordende
loselementosdelossitioswebdesarrolladosconJoomla.
95
4.3.ProcesodeMigracindeREJApasoapaso
Unavezpresentadoenelcaptuloanteriorlametodologaautilizarenunprocesode
migracin de un sitio web centrndolo en un CMS e introducido el CMS en el que est
basado nuestro sitio web, pasamos a describir el proceso completo de migracin de ste,
basndonosenlametodologadescrita.
4.3.1.AnlisisdeRequerimientos
En la fase inicial del proceso de migracin, se procede a realizar un anlisis de los
requerimientos necesarios (ver Figura 4.10). Para ello desarrollaremos los apartados de
justificacin de la migracin, objetivos a cumplir con la migracin, recoleccin de
informacinysensibilizacininstitucionalydelpersonal.
96
AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
ProcesodeMigracin
Migracinparcial
Migracincompleta
Evaluacin
Mantenimiento
Figua4.10.Elanlisisderequerimientoseslaprimerafasedelametodologa
a)Justificacindelamigracin
Elprimerpasoquetendramosquehacerpararealizarlamigracinhaciaunaversin
ms actual de Joomla, sera ver el estado actual del sistema. Para ello accedemos a su
alojamientoactualqueeshttp://sinbad2.ujaen.es/reja/.Elaspectoactualdelapginadeinicio
deRejasemuestraenlaFigura4.11.
97
4.11.Pantalladeiniciodelsitioantesdelamigracin
Lo primero que necesitamos es saber la versin actual del CMS sobre el que est
funcionandoReja,paraasdeterminarlanecesidaddemigracinyhaciaqunuevosistema
migrar. Para ver la versin actual del CMS, en este caso de Joomla, accedemos al Backend
con el usuario y contrasea de administrador mediante la url siguiente:
http://sinbad2.ujaen.es/reja/administrator.
Una vez dentro del Panel de Administracin, para obtener la versin actual de
Joomla,accedemosalmenSistemayseleccionamoslaopcinInformacindelSistema.En
la pestaa Sistema podemos obtener informacin general del sistema entre la que se
encuentralaversindeJoomla,queenestecasoesJoomla1.0.12Stable(verFigura4.12).
98
4.12.PantalladelBackendsobreInformacinGeneraldelSistema
99
primerdgitoindicauncambioimportanteenelncleodeJoomla.Uncambioenelsegundo
dgito indica que se han aadido nuevas funcionalidades en el sistema pero intentando
mantener un grado de compatibilidad. El cambio hacia ese sistema es lo que se llama
migracin.EsadaptarloscontenidosdeunaversinantiguadeJoomlaparaquefuncioneen
unamsactual.Uncambioeneltercerdgitoindicaquesolosehanintroducidopequeas
correcciones, generalmente de seguridad. La adaptacin a ese sistema es el cambio ms
bsico,yeslaactualizacin.Laclonacinesladuplicacindeunsitioweb,bienensupropio
servidor(paraduplicarloenotracarpeta)oenotrodiferente(paratrasladarelalojamiento).
b)Objetivosdelamigracin
Elprincipalobjetivoalahoraderealizarlamigracindeestesitiowebesmejorarsu
seguridad.Elsitiowebestdesarrolladobajolaversin1.0.12delCMSJoomla.Estaversin
actualmente no tiene soporte, con los problemas de seguridad y funcionalidad que ello
conlleva.
Al estar basado el sitio web en un CMS cuya versin es obsoleta y desactualizada,
perdemoslaoportunidaddepoderaadirfuncionalidadesnuevasparapoderconseguirun
sitiowebmscompetitivoyfuncional.Enestecaso,nopodremosaadiranuestrositiolas
nuevasextensionesquesedesarrollenparaesteCMSyaquepuedequenoseancompatibles
conlasversionesdesactualizadas.
Aprovechandolamigracindelsitioaunaversinactualparaconseguirlosobjetivos
anteriores, se propone como objetivo la revisin tanto del contenido como del diseo del
sitio.
100
c)Recoleccindeinformacin
En esta fase se estudian todos los datos necesarios para empezar el proceso de
migracin, agrupndolos en tres bloques como son el inventario del capital humano, el
inventariodelhardwareyelinventariodelsoftware.Alserdistintoelservidorenelqueest
alojado el sitio web y en el que lo estar una vez finalizada la migracin, se detalla el
inventariohardwareysoftwaretantodelservidorinicialcomodelfinal.
Inventario del capital humano: al estar el proceso de migracin del sitio web
integrado en este Proyecto Fin de Carrera, todo el proceso de migracin ser
llevado a cabo por el alumno que realiza tal proyecto. La fase de mantenimiento
ser llevada a cabo por personal de la Universidad, ya que no forma parte del
proyectoalserunatareaprolongadaeneltiempodurantelavidatildeste.
Inventariohardware:enesteapartadorealizamosuninventariodelhardware,tanto
delservidoractualcomodelservidornuevotraslamigracin.Paraelloutilizamos
el documento para tal fin del Anexo III. La Figura 4.13 muestra la informacin
hardware del servidor donde estaba alojada la aplicacin web antes de la
migracin.
Informacindelinventariodehardware
Nombre:
ID
Empresa:
UniversidaddeJan
Sector:
Responsabledel
inventario:
JuanFcoGaliano
Equipo
Nombredelequipo:
suleiman
Comentarios:
SistemaOperativo
Nombre:
GNU/LinuxDebian
Versin:
Versin5.07
101
ServicePack:
Procesador
Tipo:
ProcesadorIntel(R)Xeon(R)CPUX3320
Velocidad:
2.50GHz
Nmerode
procesadores:
MemoriaRAM
Descripcin
DDR2
Capacidad:
4GB
Velocidad(MHz):
233MHz
NumerodeRanuras:
Almacenamiento(Lista)
Fabricante:
Modelo:
Descripcin(IDE,...):
Tipo:
HD
Tamao
150GB
Sonido
Fabricante:
Nombre:
Descripcin:
Integradaenlaplacabase
Tarjetavdeo
Nombre:
MatroxGraphics,Inc.MGAG200e
Chipset:
Memoria(MB):
Resolucin:
Comentarios
MySQLversin5.0
PhpMyAdminversin4.2.11.8.1.
Figura4.13.Documentoconlainformacinhardwaredelservidoranteriorala
migracin.
102
LaFigura4.14muestralainformacinhardwaredelservidornuevoenelcual
vaaseralojadalaaplicacinweb.
Informacindelinventariodehardware
Nombre:
ID
Empresa:
UniversidaddeJan
Sector:
Responsabledel
inventario:
JuanFcoGaliano
Equipo
Nombredelequipo:
serezade
Comentarios:
SistemaOperativo
Nombre:
DebianGNU/Linux
Versin:
Wheezy
ServicePack:
Procesador
Tipo:
ProcesadorAMDOpteron(TM)Processor6274
Velocidad:
2.2GHz
Nmerode
procesadores:
MemoriaRAM
Descripcin
DDR2
Capacidad:
16GB
Velocidad(MHz):
233MHz
NumerodeRanuras:
Almacenamiento(Lista)
Fabricante:
Modelo:
Descripcin(IDE,...):
Tipo:
HD
HD
Tamao:
1TB
500GB
Sonido
Fabricante:
Nombre:
Descripcin:
Integradaenlaplacabase
Tarjetavdeo
103
Nombre:
MatroxElectronicsSystemsLtd.MGAG200e
Chipset:
Memoria(MB):
Resolucin:
Comentarios
Mysqlversin5.1.61
PhpMyAdminversin3.4.10.2
ServidorwebApache2.2.22Debian
Figura4.14.Documentoconlainformacinhardwaredelservidornuevotrasla
migracin.
Inventariosoftware:Aligualqueenelinventariohardwaredescribimoselhardware
antiguo y el nuevo, pasamos a describir la plataforma web sobre la que est
desarrollada la aplicacin web antes y despus de la migracin. Para ello
utilizamos el documento para tal fin del Anexo III. La Figura 4.15 muestra las
caractersticasdelaplataformawebactual.
Informacindelinventariodesoftware
Nombre:
ID:
Empresa:
Joomla!
Sector:
Responsabledel
inventario:
Nombredel
programa:
Descripcin:
104
JuanFcoGaliano
Software
Joomla!1.0.12Stable
Comentarios:
Plataforma
SistemaOperativo:
Maquinavirtualo
intrprete:
Multiplataforma
AspectosLegales
LicenciaSW:
GNU/GLP
Contratosde
mantenimiento:
RequisitosMnimos
PHP:
v.4.2.x
MySQL:
v.3.23.x
Apache:
v.1.13.19
Dispositivoshardwarenecesarios(Lista)
Descripcin
Descripcindefuncionalidades
Figura4.15.Documentoconlainformacinsoftwaredelaplataformawebactual.
LaFigura4.16muestralainformacinsoftwaredelaplataformawebsobrela
queestarlaaplicacinwebtraslamigracin.
Informacindelinventariodesoftware
Nombre:
ID:
Empresa:
Joomla!
Sector:
Responsabledel
inventario:
Nombredel
programa:
Descripcin:
JuanFcoGaliano
Software
Comentarios:
Plataforma
SistemaOperativo:
Maquinavirtualo
intrprete:
Multiplataforma
AspectosLegales
LicenciaSW:
Contratosde
mantenimiento:
GNU/GLP
RequisitosMnimos
105
Apache:
v. 4.3.x
v. 3.23.x
v. 1.3
Dispositivoshardwarenecesarios(Lista)
PHP:
MySQL:
Descripcin
Descripcindefuncionalidades
Figura4.16.Documentoconlainformacinsoftwaredelaplataformawebnueva.
d)Sensibilizacininstitucionalydelpersonal
Este proyecto de migracin ha sido propuesto por la necesidad de realizar la
migracindelsitiowebactualaunanuevaversinporlosmotivosexpuestosenelapartado
deJustificacindelaMigracin.Enestecasonoesnecesarialasensibilizacininstitucionaly
depersonalyaquelamigracinvienepropuestaporlosresponsablesdelproyectoyconella
sevanaconseguirunaseriedeventajasyfuncionalidadesnuevasqueanteriormentenoeran
posibles.Comosehacomentado,unosdelosmotivoseslaseguridaddelsitioweb.Estoes
transparentealusuarioperodevitalimportanciaparalacontinuidaddelsitio.
4.3.2.Diseo
Lasegundafasedelprocesodemigracineslafasedediseo(verFigura4.17).En
estafaseseanalizayplanificatodoelprocesodemigracin.Entrelastareasadesarrollarse
encuentran la definicin del producto a obtener, la planificacin de recursos humanos,
temporal, de migracin de contenido, econmica, de seguimiento y control, el plan de
contingencia,laplanificacindeformacinyevaluacin,laestrategiademigracinaseguir
ylamejoraelsistema.Acontinuacindetallamosdichastareas.
106
1. AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
2. Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
3. ProcesodeMigracin
Migracinparcial
Migracincompleta
4. Evaluacin
5. Mantenimiento
Figura4.17.Lafasedediseoeslasegundafasedelametodologa
a)Definicindelproductoaobtener
El producto sobre el cual se inicia el proceso de migracin es el Sistema de
Recomendacin de Restaurantes Georreferenciados REJA descrito en la seccin 4.1 de este
captulo. El producto a obtener, por tanto, ser este mismo sistema con las mismas
funcionalidades y caractersticas, pero basado en una versin ms actual del sistema de
gestindecontenidossobreelqueestdesarrollado.Laversindeestesistemaserla1.5.26.
Si no se modificase la plantilla del sitio web, la apariencia debera ser igual tanto en el
sistemaactualcomoenelnuevo,perotodoelncleointernodelCMSquedaractualizado,
contodaslasventajasqueelloconlleva.
107
Este cambio de sistema a una versin ms actual, conlleva una serie de nuevas
caractersticasqueafectanalusuario.Pasamosadescribirlasmsimportantes:
Mejora del manejo de contraseas perdidas. Joomla 1.5 facilita al usuario el
obtener sus contraseasperdidas en base a su nombre de usuario o direccin de
correoelectrnico.
Instaladorunificadoparacomponentes,mdulos,plugins,plantillaseidiomas.
Unanicareadeedicinparaescribirelcontenidodeintroduccinyprincipal.
Nuevoadministradordeimgenesquepermiteinsertarimgenesalvuelo.
Subidademltiplesarchivosalavez.
Nuevos ajustes de configuracin.
b)Planificacinderecursoshumanos
Enesteproyecto,losdiferentesperfilesquesedefinenalahoradelaplanificacinde
recursoshumanosquevanarealizarlamigracin,recaennicamentesobredospersonas.La
primerapersona,queenestecasoseraeltutordelproyecto,actacomodirectorinternodel
proyecto, realizando las tareas de definir exactamente el producto a obtener, organizar el
trabajo,conocerquseesperadelamigracinybuscarelcumplimientodelcalendarioyel
presupuestoprevisto.Unasegundapersona,elalumnoquerealizaesteproyecto,actacomo
especialista de contenido, tanto como publicador y editor, al igual que desarrollador. La
tarea de formacin la realizarn en un principio el alumno y en adelante el personal de la
organizacinencargadodesumantenimiento.
108
c)Planificacintemporal
Estaplanificacinsehaconsideradoquenoeranecesaria.Estoesdebidoaqueeste
procesodemigracinestlocalizadoeneldesarrollodeunproyectomsextenso,enelcual
sevadefiniendounametodologademigracindesitioswebalavezquesevallevandoala
prcticaelmismo,locualretrasaconsiderablementeelprocesodemigracinnopudindose
definirconantelacinlatemporalidaddelmismo.
d)Planificacindemigracindecontenido
Como se coment en el captulo 2, en la fase de Planificacin de migracin de
contenido,unatareapreviaalamigracindecontenidoesrevisarelcontenidodelsitioweb
para prescindir de aquel que sea redundante, que contenga informacin caducada o por
algunanecesidaddecalidad.AltratarsedeunCMS,tambinhayquecomprobarquetodas
las plantillas y extensiones instaladas se estn utilizando, para prescindir de las que no lo
estn.
Vamos a empezar por revisar las plantillas instaladas. Las plantillas instaladas
actualmente en el sitio web se pueden ver desde el Backend en Sitio Administrador de
Plantillas Plantillas del Sitio. Como se muestra en la Figura 4.18, de todas las plantillas
instaladas solamente se est utilizando una, por lo que el resto habra que borrarlas para
evitar arrastrarlas a lo largo del proceso de migracin. Esto puede suceder porque hayan
sidoinstaladasyprobadasdiferentesplantillasparafinalmenteseleccionarsolamenteunay
nosehatenidoencuentaladesinstalacindelasquenovanaserusadas.
109
Figura4.18.Listadodetodaslasplantillasinstaladasenelsistema
AcontinuacinserealizauninventariodelasextensionesinstaladasenelCMSpara
desinstalaraquellasqueenalgnmomentohansidoinstaladasperoquenotienenninguna
funcionalidadenlaactualidad.Paradetectarlasserequieredeungranconocimientodelsitio
110
Figura4.19.Listadodecomponentesinstalados
EnlaFigura4.20semuestranlosmdulosinstalados,accesiblesdesdeelmen
Mdulos.
Figura4.20.Listadodemdulosinstaladosenelsistema
111
EnlaFigura4.21semuestranlasMambotsinstalados,accesiblesdesdeelmen
Mambots.LosMambotseranuntipodeextensinutilizadasenversionesdeJoomla
anterioresala1.5.
Figura4.21.Listadodemambotsinstalados
Revisamos ahora los enlaces de cada men, para prescindir de los que no estn
publicados y no tengan utilidad, bien sea porque se cre para una prueba y se
obvilaeliminacinoporqueenuniniciostenautilidadperoyanolatiene(ver
Figura4.22).
112
Figura4.22.Listadodemenscreados
Unavezqueseharealizadolaplanificacindelalimpiezadenuestrositiorespectoa
lainformacinquenoqueremosmigrar,pasaramosaplanificarlamaneradellevaracabola
migracin.Ennuestrocaso,larealizaremosdemaneraautomticautilizandoelcomponente
mtwmigrator,elcualesdescritoenelAnexoII.
e)Planificacineconmica
Al trabajar con software libre, estamos prescindiendo de algunos costes directos,
como pueden ser el sistema gestor de contenidos CMS Joomla y el sistema de gestin de
bases de datos MySQL. El servidor de alojamiento del sitio web, an siendo distinto al
actual,noconllevaraunincrementodelcostedelamigracinalnotenerqueserfinanciando
por este proyecto. El coste del personal que realiza la migracin en este proyecto no sera
aplicable.
113
Existenunoscostesindirectosqueenunprincipionopodemospreverlosnitasarlos
queprovienendeerroresoproblemasduranteelprocesodemigracin,comopuedenserlos
costesdemantenimiento,deseguridad,dedisponibilidad,etc.
f)Planificacindelseguimientoycontrol
Elobjetivoprimordialestenercontroladoentodomomentoelproyecto,parapoder
detectarcualquierdesviacinenlaplanificacin,comopodraserunretrasoenalgunadelas
tareas y poder tomar las acciones correctivas necesarias. En nuestro caso, al no haber
realizadounaplanificacintemporalporlosmotivosexpuestosanteriormente,noesposible
realizarunseguimientodelamisma.
g)Plandecontingencia
EnelAnexoI,sehandescritodiversosmtodospararealizarelprocesodelascopias
deseguridad,porloquenosernecesariodescribirloaqu.Ennuestrocaso,vamosaaplicar
elmtodomanual,elcualejecutaremosmsadelanteenlafasedeprocesodemigracin.
h)Planificacindelaformacin
Enesteproyectoslosevaarealizarformacinalosadministradoresfuturosdelsitio
web para que puedan llevar a cabo el mantenimiento del mismo. Como gua para dicha
formacin,sermuytillamemoriadeesteproyecto,enlacualseexplicaendetallecada
pasorealizado,siguiendolametodologadefinida.Alosusuariosfinalesnosernecesarioya
que el sitio conservar la misma funcionalidad que el sitio antes de migrar, pero bajo una
versinnuevadelCMS.
114
i)Planificacindelaevaluacin
Parapoderevaluarelprocesorealizadodemigracin,debemosdellevaracabouna
serie de pruebas que nos garanticen la calidad del proceso. Para ello realizaremos los
siguientestestalfinalizarlamigracin:
Test1:Registrovlidodeunusuarioenelsistema
Requisitotesteado
Registrodeusuariosenelsistema
Accin
Unusuariointroduce,conelformatocorrecto,losdatosrequeridos
porelsistemaypulsasobreelbotnAceptar.
Checkpoint1
Elsistemadebemostrarunmensajedeaceptacinderegistroy
envauncorreoelectrnicoalusuarioconunenlacequepermita
activarelregistro.
Test2:Registroincorrectodeunusuarioenelsistema
Requisitotesteado
Registrodeusuariosenelsistema
Accin
Checkpoint1
Elsistemadebemostrarunmensajedeerrorinformandoquelos
camposdecontraseanocoinciden.
Test3:Identificacindeusuario
Requisitotesteado
Obtencindelosdatosalmacenadosenelperfildelusuario
Accin
Unusuariointroducesunombredeusuarioycontraseaypulsael
botnEntrar.
Checkpoint1
Elsistemadebemostrarelmendedichousuarioyunaseccincon
susdatospersonales.
115
Test4:Identificacinerrneadelusuario
Requisitotesteado
Obtencindelosdatosalmacenadosenelperfildelusuario
Accin
Unusuariointroducesunombredeusuarioycontraseadeforma
incorrectaypulsaelbotnEntrar.
Checkpoint1
Elsistemadebemostrarunmensajedeerrorinformandodequela
contraseaesincorrecta.
Test5:Modificacindelosdatosdeusuario
Requisitotesteado
Modificacindelosdatosdelosusuarios
Accin
UnusuariomodificasusdatospulsaelbotnAceptar.
Checkpoint1
Elsistemadebeguardarloscambiosenlabasededatosymostrar
unmensajeadvirtiendoalusuariodequesusdatoshansido
modificadosconxito.
Test6:Obtencindeinformacinbsicadeunrestaurante
Requisitotesteado
Accesoalainformacinlosrestaurantes
Accin
UnusuariopulsasobrelaopcinRestaurantesdelmenprincipal.
Checkpoint1
Elsistemadebemostrarunapantallaquepermitaverlalistade
restaurantesordenadaporordenalfabticooportipode
establecimiento.
Accin
ElusuariopulsasobrelaopcinOrdenadosAlfabticamente
Checkpoint2
Elsistemadebemostrarunalistacontodoslosrestaurantes
almacenadosenlabasededatos,ordenadosdeformaalfabtica.
Accin
Elusuarioseleccionaunrestaurantedelalista.
Checkpoint3
Elsistemadebemostrarunapantallaconlainformacinbsicadel
restauranteseleccionado.
116
Test7:Puntuacindeunrestaurante
Requisitotesteado
Puntuacindelosrestaurantes
Accin
Checkpoint1
Elsistemadebemostrarunapantalladondeaparecerunalista
desplegablecontodoslosrestaurantesalmacenadosenlabasede
datos,unaseriederadiobuttonsquesecorrespondenconla
puntuacinquesepuededaralrestaurante(MM:MuyMalo,M:
Malo,R:Regular,B:Bueno,MB:MuyBueno)yelbotnpuntuar.
Accin
Elusuarioseleccionaunrestaurantedelalista,pulsasobreelbotn
quesecorrespondeconlapuntuacinquequieredaralrestaurante
yhaceclicsobreelbotnpuntuar
Checkpoint2
Elsistemadebeaadirunanuevapuntuacinalperfildelusuario.
Test8:Modificacindelapuntuacindeunrestaurante
Requisitotesteado
Modificacindelaspuntuacionesdelosrestaurantes
Accin
UnusuarioidentificadopulsasobrelaopcinMisPuntuacionesdel
mendeusuario.
Checkpoint1
Elsistemadebemostrarunapantalladondeaparecerelnombrede
losrestaurantesyapuntuadosylapuntuacinqueelusuarioha
hechosobreellos.
Accin
Elusuariopulsasobreunrestaurante.
Checkpoint2
Elsistemadebemostrarunapantallaconelnombredelrestaurante,
unaseriederadiobuttonsquesecorrespondenconlapuntuacin
quesepuededaralrestaurante(MM:MuyMalo,M:Malo,R:
Regular,B:Bueno,MB:MuyBueno)yelbotnpuntuar.
Accin
117
Checkpoint3
Elsistemadebemodificarlapuntuacindelrestaurante.
Obtencinderecomendacionesderestaurantes
Accin
Checkpoint1
Elsistemadebemostrarunapantalladondesemostrarndos
opcionesderecomendacin:Recomendacionesbasadasenun
restauranteconocidoyRecomendacionesporfiltro.
Accin
Checkpoint2
Elsistemadebemostrarunapantallaconlalistaderestaurantes
almacenadosenlabasededatos.
Accin
Checkpoint3
Elsistemadebemostrarunapantallaconlosrestaurantesquems
seasemejenalrestauranteseleccionado.
Accin
Elusuariopulsasobreunrestaurante.
Checkpoint4
Elsistemadebemostrarunapantalladondesemostrarla
informacinbsicadelrestauranteseleccionado.
Obtencinderecomendacionesderestaurantes
Accin
118
Checkpoint1
Elsistemadebemostrarunapantalladondesemostrarndos
opcionesderecomendacin:Recomendacionesbasadasenun
restauranteconocidoyRecomendacionesporfiltro.
Accin
ElusuariopulsalaopcinRecomendacionesporfiltro.
Checkpoint2
Elsistemadebemostrarunapantallaconunaseriedelistas
desplegablesquepermitirnseleccionarelintervalodepreciosdel
men,eltipodecocinaytipodeestablecimiento.
Accin
Checkpoint3
Elsistemadebemostrarunapantallaconlosrestaurantesquems
seasemejenalrestauranteseleccionado.
Accin
Elusuariopulsasobreunrestaurante.
Checkpoint4
Elsistemadebemostrarunapantalladondesemostrarla
informacinbsicadelrestauranteseleccionado.
Test11:Recomendacinrpidaderestaurantesparausuariosidentificados
Requisitotesteado
Obtencinderecomendacionesderestaurantes
Accin
UnusuarioidentificadopulsasobrelaopcinRecomendacionesdel
menprincipal.
Checkpoint1
Elsistemadebemostrarunapantallaconunalistadetodoslos
restaurantesquehayalmacenadosenlabasededatosyunbotn
SeleccionarRestaurante.
Accin
Checkpoint2
Elsistemadebemostrarunapantallacontresrestaurantesque
estnrelacionadosconelseleccionadoysuscorrespondienteslistas
desplegablesquepermitirnespecificarlapreferenciadelusuario
deestosconrespectoalrestauranteseleccionado.
119
Accin
Elusuarioseleccionaunvalordecadalistaypulsasobre elbotn
obtenerrecomendaciones.
Checkpoint3
Elsistemadebemostrarunapantallaconlosrestaurantesquems
seasemejenalrestauranteseleccionado.
Accin
Elusuariopulsasobreunrestaurante.
Checkpoint4
Obtencinderecomendacionesderestaurantes
Accin
Checkpoint1
Elsistemadebemostrarunapantallaconunalistade10
restaurantesrecomendadosdeacuerdoalperfildelusuario.
Accin
Elusuariohaceclicsobreunrestaurante.
Checkpoint2
Elsistemadebemostrarunapantalladondesemostrarla
informacindelrestauranteseleccionado.
la
opcin
Mis
Test13:Geolocalizacindeunrestauranterecomendado.
Requisitotesteado
Geolocalizacindelosrestaurantes
Accin
Unusuario identificadoaccedealainformacindeunrestaurante
recomendadoypulsasobreelbotnGeorreferenciacin.
Checkpoint1
Elsistemadebemostrarunanuevapantalla(elmduloSIG),conla
localizacindelrestaurantesobreunmapavirtual.
120
Geolocalizacindelosrestaurantes
Accin
Unusuario identificadoaccedealainformacindeunrestaurante
recomendado que tiene una direccin que no es correcta y pulsa
sobreelbotnGeorreferenciacin.
Checkpoint1
Elsistemadebemostrarunavisoadvirtiendodequeladireccin
delrestaurantenosepuedegeocodificar.
Test 15: Obtencin del camino ms corto desde la direccin del usuario hasta el
restauranterecomendado
Requisitotesteado
Obtencindelcaminomnimonecesarioparallegaraun
restaurantedesdeladireccindelusuario
Accin
Unusuario identificadoaccedealainformacindeunrestaurante
recomendadoypulsasobreelbotnGeorreferenciacin.
Checkpoint1
Elsistemadebemostrarunanuevapantalla(elmduloSIG),conla
localizacindelrestaurantesobreunmapavirtual.
Accin
ElusuariopulsasobreelbotnRutadesdetudireccin.
Checkpoint2
Elsistemadebemostrarsobreelmapavirtual,unalneaque
representalarutamscortadesdeladireccindelusuariohastael
restaurante,yunaseriedeinstruccionesparacompletareltrayecto.
Test16:Clculoderutas
Requisitotesteado
Clculoderutasentredospuntos
Accin
Unusuario identificadoaccedealainformacindeunrestaurante
recomendadoypulsasobreelbotnGeorreferenciacin.
Checkpoint1
Elsistemadebemostrarunanuevapantalla(elmduloSIG),conla
localizacindelrestaurantesobreunmapavirtual.
121
Accin
ElusuariopulsasobreelbotnClculoderutasyhaceclicsobre
elpuntodeorigenyeldedestinoquedesee.
Checkpoint2
Elsistemadebemostrarsobreelmapavirtual,unalneaque
representalarutamscortadesdeladireccindelpuntodeorigen
hastaelpuntodedestino,yunaseriedeinstruccionespara
completareltrayecto.
Test 17: Consultas de los lugares para visitar que estn a menos de 200 metros del
restauranterecomendado
Requisitotesteado
Consultassobreelmapa
Accin
Unusuario identificadoaccedealainformacindeunrestaurante
recomendadoypulsasobreelbotnGeorreferenciacin.
Checkpoint1
Elsistemadebemostrarunanuevapantalla(elmduloSIG),conla
localizacindelrestaurantesobreunmapavirtual.
Accin
ElusuariopulsasobreelbotnConsultasyposteriormentesobre
Consultassobreelmapa
Checkpoint2
Elsistemadebemostrarunaseccinquepermitaespecificarlos
criteriosdebsquedadeseadosporelusuario.
Accin
Elusuariopulsasobreelcheckboxquesecorrespondeconlugares
paravisitarypulsaconelbotnderechosobreelpuntodondese
encuentrasituadoelrestauranterecomendado.
Checkpoint3
Elsistemadebemostrarunmencontextualconunaseriede
opcionesdeconsultaspordistancia.
Accin
ElusuariohaceclicsobrelaopcinConsultas100metros.
Checkpoint4
Elsistemadebeidentificarymostrarloslugaresdeintersque
cumplenlasrestriccionesimpuestasporelusuario.
122
j)Estrategiademigracin
En nuestro caso la estrategia de migracin seguida ser la migracin parcialmente
automatizada. Una parte del contenido del sitio web ser migrado ayudndonos del
componente mtwmigrator, descrito en el Anexo II. Existe una importante parte de nuestro
sitiowebquenopodrsermigradoconestaextensin,demodoquehabrquerealizarlade
manera manual. Este proceso lo describimos en detalle en la siguiente fase de migracin
completa.
Una migracin parcialmente automatizada realiza una serie de procesos de manera
automticaayudndosedeunaextensin,peroquedarnotraseriedetareasquesedebern
llevaracabodemaneramanual.Acontinuacin,seenumeranlastareasqueserealizande
maneraautomatizadaylasdeformamanual:
Deformaautomatizada:
Migrartodoslosregistrosdelcontenidodelncleoenlabasededatos(ejemplo:
contenido, enlaces web, banners, contactos, noticias externas, encuestas y
usuarios).
Reconstruirlosmensenlanuevaestructurademensconlosartculosdemen
que enlazan a contenido del ncleo (se excluyen los componentes desarrollados
porterceros).
Trasladar todos los registros de mdulos del ncleo desde el sitio antiguo a las
tablas de mdulos del nuevo sitio. Los registros originales de los mdulos se
establecencomoNopublicados.Seconservantodoslosajustesdeconfiguracin.
Elusuarionecesitarreconfigurarlosajustesdeposicin,ordenypublicacin.
Deformamanual
123
Migrarlosregistrosdelabasededatosparaextensionesdeterceros.
Migrar los contenidos que no estn incluidos en la base de datos, como las
imgenesdebanners,archivos,fotos
k)Mejoradelsistema
Comosecomentenelapartadodeanlisisderequerimientos,elprocesollevadoa
caboalcambiardeunCMSsinsoportehaciaestemismoperoenunaversinactual,conlleva
unaseriedemejorasdelsitioconmayorseguridad,limpiezadeste,mayorfuncionalidad,
etc.Enesteproyectonosehallevadoacaboningunamejoraaadidadelsistema.
4.3.3.ProcesodeMigracin
El proceso de migracin es la tercera fase de la metodologa de migracin de CMS
(verFigura4.23).Estafaserealizalastareasdemigracinparcialymigracincompleta.
124
AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
ProcesodeMigracin
Migracinparcial
Migracincompleta
Evaluacin
Mantenimiento
Figura4.23.Lafasedeprocesodemigracineslatercerafasedelametodologa
4.3.3.1.MigracinParcial
Enesteproyectosevaautilizarelesquemademigracinenunnicopaso.Eneste
esquema se va a migrar de una plataforma web a otra, sin realizar antes una migracin
parcial, debido a que el sistema sobre el que estamos trabajando no tiene excesivo tamao
comopararealizarestepasointermedio.
125
4.3.3.2.MigracinCompleta
A continuacin se ejecutan algunas de las tareas documentadas en la fase de diseo
siguiendolasecuenciadescritaenlafasedeprocesodemigracindelametodologaseguida.
a)Copiasdeseguridad
Comenzando con la ejecucin del proceso de migracin, el primer paso es la
realizacin de la copia de seguridad. Para llevarla a cabo seguimos la planificacin de
contingenciarealizadaenlafasedediseo.Comoelprocesoelegidoeselmanual,seobtiene
comoresultadoporunaparteelarchivoderespaldodelabasededatos,yporotro,todoslos
ficherosquecomponenelsitio.
Para comprobar que la copia de seguridad se ha realizado de manera correcta, se
realizalainstalacinenlocaldelsitiowebrespaldadoyseverificasufuncionamiento.Para
la instalacin en local, se presupone que se tiene instaladoy configurado un servidor local
tantodeApache,PHPyMySQL,necesariosparaelfuncionamientodelCMSJoomla.
Unavezdispongamosdelosdoselementos,archivosybasededatos,necesariospara
realizarlanuevainstalacinprocederemosaellosiguiendolossiguientespasos:
1.Secopianlosarchivosdescargadosenlacarpetadelservidorlocal,ennuestrocaso
enc:\AppServ\www\reja.
2.Crearemoslabasededatosenelservidor.Alserunservidorlocal,accedemosala
direccinhttp://localhost/phpmyadminysecreaunabasededatosnuevallamadareja.
126
Figura4.24.OpcindeimportacinenphpMyAdmin
4. Conectar la base de datos con la aplicacin modificando los datos del archivo
configuration.php. El ltimo paso del proceso ser indicar en el archivo configuration.php
127
los datos de conexin con la nueva base de datos. Se edita el archivo y se buscan los
parmetrosamodificarconlosdatosdelnuevoservidorydelanuevabasededatos.
Estosparmetrosserneltipodebasededatos(dbtype),alojamiento(host),nombre
de la base de datos a utilizar (db) junto con su usuario de acceso (user) y contrasea
(password).Existenotroscamposquetambinhabrquetenerencuentadependiendodelas
caractersticasdelsitiocomosonlaconfiguracindelacapaftp,elprefijodelastablasdela
basededatos,lalocalizacindelosarchivostemporales,etc.
Una vez realizados estos cuatro pasos, queda configurado en local la copia de
seguridad de nuestro sitio web. Las pruebas a realizar para comprobar su correcto
funcionamiento son las descritas en el plan de evaluacin. El aspecto final del sitio web una
vezinstaladoenlocaleselmostradoenlaFigura4.25.
Figura4.25.Aspectofinaldelsitiowebenlocal
En este punto, queda comprobado que la copia de seguridad est correctamente
realizada,porloquesepuedecontinuarconlamigracindelsitioweb.Estodalagaranta
128
de que si por algn motivo no se pudiera continuar con la migracin, siempre se podr
volveralestadoinicialdelsistema.
b)Limpiezadelestadoactual
En esta fase se realiza la limpieza del contenido del sitio web que se desea migrar
siguiendo la planificacin de migracin de contenido descrita en la fase de diseo. Se
comentabalanecesidaddedividirelcontenidodelsitiowebparaprescindirdelquenofuese
necesario migrar debido a su redundancia, a su caducidad, o a cualquier necesidad de
calidad.
ComosehacomentadoenlafasedePlanificacindeMigracindeContenido,antes
de realizar la migracin de ste, hay que hacer una limpieza del sitio web actual. En este
momento llevamos a la prctica la planificacin realizada previamente, eliminado las
plantillas, extensiones, enlaces, contenidos, etc. que ya no son necesarios en nuestro sitio
web,porloquenosedeseatrasladarlosennuestroprocesodemigracinalnuevositio.
c)Ejecucindelaestrategiademigracin
Una vez que tenemos realizada la copia de seguridad de nuestro sitio web y la
limpiezadecontenido,procedemosacontinuarconlamigracin.Lamigracininicialmente
se va a realizar en el servidor local, y una vez que est finalizada, se configura sobre el
servidor final. Como paso inicial, la migracin se realiza en local para solventar de forma
msrpidayseguracualquierproblemaquepuedasurgir.Alteneryainstaladaenlocaluna
versin del sitio realizada anteriormente durante el proceso de Copia de Seguridad,
utilizamosstaduranteelrestodelproceso,parafinalmentesubirlaalservidordefinitivo.
129
Los pasos genricos que se van a llevar a cabo en nuestro proceso de migracin
consistenenpasardelCMSJoomlaversin1.0.12,queeselsitioactual,alaversin1.5.26.
Parapoderllevaracabodichamigracin,primerohayquehacerunpasointermediohaciala
versin1.0.15ydesdestaala1.5.26(verFigura4.26).
Joomla
1.0.12
Sistemaactual
Joomla
1.0.15
Joomla
1.5.26
Sistema
intermedio
(actualizacin)
Sistemanuevo
(migracin)
Figura4.26.Esquemadelprocesodemigracinrealizado.
Elprocesodepasardelaversin1.0.12haciala1.0.15noesunprocesodemigracin,
sinounaactualizacin.Esteprocesodedetallaacontinuacin:
1)ActualizacindeJoomla1.0.12a1.0.15
La actualizacin consiste en la sustitucin de una serie de archivos del ncleo de
Joomlaporlosactualizados,portanto,esteprocesonoconllevaningunamodificacinenla
base de datos. En principio esta debera ser una tarea inmediata, pero primero hay que
descartar que se encuentre algn tipo de cdigo propio incrustado en el ncleo de Joomla
que pueda ser eliminado con la actualizacin. En el caso de darse tal situacin, habra que
estudiarcadacasoenconcretoyofrecerunasolucinptimaparacadauno,manteniendola
funcionalidaddelmismo.
En nuestra actualizacin se ha encontrado un problema en el componente
com_registration de cdigo propio incrustado, por lo que se ha tenido que subsanar el
130
Figura4.27.Archivosmodificadosdurantelaactualizacin
131
2)MigracindeJoomla1.0.15a1.5.26
Pararealizarlamigracinentreestasdosversiones,existendiferentesmtodospara
llevarla a cabo. En la fase de diseo, en el apartado de Planificacin de Migracin de
Contenido, se ha especificado llevarla a la prctica mediante el componente mtwmigrator,
concretamente la versin 0.2.1. El procedimiento de configuracin y ejecucin genrico del
mismosehadetalladoenelanexoII.
Aplicandoesteprocedimientosobrenuestrositio,seobtienelaversindefinitivade
Joomla1.5.26.EnlaFigura4.28semuestraelmomentodelaconfiguracindelcomponente
enelcualseintroducenlosdatosdealojamientoybasededatosdenuestrositio,ademsde
diferentesopcionesdemigracin.Estecomponenteofrecelaposibilidaddemigrartambin
losdatosdealgunasextensionesmuypopularesexternasaldesarrollodeJoomla
Figura4.28.Opcionesdeconfiguracindelcomponentemtwmigrator
Una vez llevado a cabo este proceso, se muestra una pantalla (ver Figura 4.29)
indicando los resultados obtenidos de la migracin. Todos los apartados mostrados deben
indicarquesehanrealizadocorrectamenteparaelcorrectofuncionamientodelamigracin.
132
En caso contrario, habr que revisar individualmente cada uno y detectar el posible
problemaparasubsanarlo.
Figura4.29.Resultadosobtenidostraslamigracin
Finalizadoelprocesodemigracindecontenidoautomticomedianteelcomponente
descrito, el aspecto de la pgina de inicio del sitio se muestra como en la Figura 4.30. El
contenido ha sido migrado, pero se necesita revisarlo para mantener el sistema con las
mismas funcionalidades y aspecto que el estado inicial. Para ello, desde el panel de
administracin del sitio, hay que revisar el estado de publicacin de los artculos,
componentes, mdulos, plugins, plantillas, etc., hasta conseguir que tanto el sitio de inicio
comoelresultadodelamigracinseaniguales.
133
Figura4.30.Aspectoactualdelapginadeiniciotraslamigracin
4.3.5.Evaluacin
Una vez realizado el proceso de migracin completo, es el momento de comprobar
quesehallevadoacabocorrectamente(verFigura4.31).Paraello,seejecutaelprocesode
evaluacindescritoenlafasedediseo.
134
AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
ProcesodeMigracin
Migracinparcial
Migracincompleta
Evaluacin
Mantenimiento
Figura4.31.Lafasedeevaluacineslacuartafasedelametodologa
En la siguiente tabla se muestra cada prueba realizada sobre el sistema con sus
diferentespuntosdecontrolyelresultadodecadauno.
Prueba
Resultado
Test1
Checkpoint1
Ok
Test2
135
136
Checkpoint1
Ok
Test3
Checkpoint1
Ok
Test4
Checkpoint1
Ok
Test5
Checkpoint1
Ok
Test6
Checkpoint1
Ok
Checkpoint2
Ok
Checkpoint3
Ok
Test7
Checkpoint1
Ok
Checkpoint2
Ok
Test8
Checkpoint1
Ok
Checkpoint2
Ok
Checkpoint3
Ok
Test9
Checkpoint1
Ok
Checkpoint2
Ok
Checkpoint3
Ok
Checkpoint4
Ok
Test10
Checkpoint1
Ok
Checkpoint2
Ok
Checkpoint3
Ok
Checkpoint4
Ok
Test11
Checkpoint1
Ok
Checkpoint2
Ok
Checkpoint3
Ok
Checkpoint4
Ok
Test12
Checkpoint1
Ok
Checkpoint2
Ok
Test13
Checkpoint1
Ok
Test14
Checkpoint1
Ok
Test15
Checkpoint1
Ok
137
Checkpoint2
Ok
Test16
Checkpoint1
Ok
Checkpoint1
Ok
Test17
Checkpoint1
Ok
Checkpoint2
Ok
Checkpoint3
Ok
Checkpoint4
Ok
4.3.6.Mantenimiento
LafasedemantenimientoeslaltimafasedelametodologademigracindeCMS
(verFigura4.32).Hastaestemomentoyaseharealizadolamigracinysehaevaluadopara
comprobarsuperfectofuncionamiento.Peroelprocesodemigracinnoacabaaqu,hayque
realizarlafasedemantenimientoparafinalizarlo.
138
AnlisisdeRequerimientos
Justificacindelamigracin
Objetivos
Recoleccindeinformacin
Sensibilizacininstitucionalydelpersonal
Diseo
Definicindelproductoaobtener
Planificacinderecursoshumanos
Planificacintemporal
Planificacindemigracindecontenido
Planificacineconmica
Planificacindeseguimientoycontrol
Plandecontingencia
Planificacindelaformacin
Planificacindelaevaluacin
Estrategiasdemigracin
Mejoradelsistema
ProcesodeMigracin
Migracinparcial
Migracincompleta
Evaluacin
Mantenimiento
Figura4.32.Laltimafasedelametodologaeslafasedemantenimiento
Una de las tareas a realizar en la fase de mantenimiento es la formacin de los
usuarios en el nuevo sistema. Para ello, ejecutaremos el plan de formacin definido
previamente. Por muy completo y potente que sea el nuevo sitio, si losusuarios finales no
recibenlaformacinnecesariasobrenuevosusosonuevasfuncionalidadesdelnuevositio,
estepodraproducirrechazoconlaconsecuenteprdidadeintersporelsitio,quellevara
undescensoenelnmerodeusuariosqueloutilizan.Portanto,esmuyimportantellevara
laprcticaelplandeformacinrealizado.
Enestafasesetienequedefinirquinoquinesvanaserlaspersonasresponsables
de la administracin del sistema. Estas personas son las encargadas de actualizar el
139
contenidodelaspginasexistentes,publicarnuevaspginasosecciones,hacerbackupsdel
sitio, administrar los usuarios registrados, solventar posibles incidencias, mantener
actualizada toda la informacin de la que se compone tanto el sistema de recomendacin
comoeldegeorreferenciacin,realizarlasactualizacionesoportunas,etc.
4.4.ProcesosAdicionalesalaMetodologaPropuesta
paraProblemasEspecficos
Estos procesos adicionales son tareas o decisiones realizadas durante la migracin
debidoadiferentesproblemasocircunstanciasnoprevistasenlafasedeplanificacin,pero
que se han tenido que llevar a cabo para el correcto funcionamiento de la plataforma y la
aplicacin.Estastareassonlassiguientes:
Incompatibilidaddelaaplicacinwebconnuevasversionesdelaplataforma:
Unodelosproblemasencontradosduranteelprocesodemigracinynodetectados
enlaplanificacindesta,hasidolaincompatibilidaddelaaplicacinREJAconversiones
superioresala1.5.26delaplataformaCMSJoomlasobrelaquefunciona.Esteproblemaes
debido a que el CMS Joomla, a partir de su versin 1.5, utiliza el patrn de desarrollo
ModeloVistaControlador(MVC)paratodoelsistema,incluidaslasextensionesyplantillas.
La aplicacin REJA no haba sido diseada bajo este patrn, ya que para la versin
delCMSquefuedesarrollada(laversin1.0.12)noeraobligatorio.EnlaversindeJoomla
hastalaquesehapodidomigrarlaplataforma(versin1.5.26),anestandoyadesarrollada
bajo el patrn CMS, existe un plugin denominado Legacy mode en la instalacin, que
habilitndolo, permite la ejecucin de aplicaciones an no siguiendo este patrn. En
versiones posteriores a esta, no se dispone de este plugin, obligando a que todas las
140
extensiones y plantillas que se ejecuten sobre la plataforma, sigan el patrn. Para poder
seguirutilizandoestaaplicacin,seranecesariolaprogramacincompletadesdeeliniciode
laaplicacinREJAsiguiendoelpatrnCMS(verFigura4.33).
Figura4.33.Diagramaquemuestralarelacinentreelmodelo,lavistayelcontrolador.
Nuevaversinparaelsistemadegeorreferenciacin
Una de las funcionalidades de la aplicacin REJA es la georreferenciacin de los
restaurantes. Para el desarrollo de esta funcionalidad se utiliz la API de Google Maps
(https://developers.google.com/maps) en su versin 2. Esta versin ha quedado obsoleta al ser
publicadalaversin3delamisma.Laversin3mejoramuchasdelasfuncionalidadesdela
versinanterior,comopuedensermayorcompatibilidadconsistemasmviles,mejoraenla
presentacin de los mapas, mejor rendimiento en determinados navegadores web, nuevas
funcionalidades,etc.
En nuestro proceso de migracin de la aplicacin sobre el CMS Joomla, no se ha
llevadoacabolamigracindeestafuncionalidad,yaquenoeraunobjetivodeesteproyecto.
Alproducirseuncambioenelservidordealojamientodelaaplicacin,sehatenido
que solicitar una clave nueva para su correcto funcionamiento. Esta clave, denominada
Google Maps API key, ha sido solicitada en la pgina web de desarrollo de Google
(https://developers.google.com/maps). Para ello es necesario indicar una cuenta de correo
141
CdigomodificadoenelncleodeCMS
Durante el proceso de migracin se ha detectado una serie de problemas de
funcionamientodelaaplicacin.Estosproblemaseranmostradosenlafasederegistrodeun
nuevo usuario. Tras revisar el cdigo en detalle, se ha detectado una modificacin en el
cdigo del componente encargado de realizar dicho registro, el cual realiza una
funcionalidad necesaria dentro del proceso de registro en la aplicacin. Al formar este
componentepartedelncleodelCMS,siemprequeserealiceunaactualizacinomigracin
delncleo,secorreelriesgodeperderdichafuncionalidadyportanto,causarproblemasen
laejecucindelaaplicacin.
Parasubsanarelproblema,primerosehalocalizadoelcdigoaadidoalcomponente
com_registrationrealizandounacopiadeste.Acontinuacin,sehamigradoelcomponente
ensutotalidadalaversinnueva.Unavezdisponiblelanuevaversindelcomponente,se
ha vuelto a insertar el cdigo copiado anteriormente en su correcta localizacin, dentro de
este componente, de manera manual y se ha realizado un comentario en el cdigo para
futuras migraciones. Estos pasos son necesarios realizarlos para dejar el sistema con
completafuncionalidadtraslamigracin.
Otrosproblemasreferentesalcdigoencontradosduranteelprocesodemigraciny
subsanados han sido errores en algunas variables por problemas de distincin entre
maysculasyminsculasyprefijosdelosnombresdelastablasescritosmanualmente.
142
Captulo5
Conclusiones
143
144
145
meticulosamenteantesderealizarcualquiercambio.Aunhabiendorealizadotodoesto,hay
que estar preparado para cualquier circunstancia inesperada que pueda surgir, ya que hay
muchos factores implicados en el proceso, como software, hardware, compatibilidades,
datos,protocolos,etc.
146
Bibliografa
147
148
1.
E.H.Bersoff,V.D.H.,S.G.Siegel,SoftwareConfigurationManagement.1980:Prentice
Hall.
2.
Pressman,R.S.,IngenieradelSoftware:UnEnfoquePrctico.Sextaed.2005:McGraw
Hill.958pginas.
3.
Ibez,A.A.,SistemadeRecomendacindeRestaurantesGeorreferenciados.Escuela
PolitcnicaSuperiordeJan.UniversidaddeJan,2008.
4.
ConsejoSuperiordeAdministracinElectrnica,DirectricesIDAdemigracina
softwaredefuentesabiertas.2003.
5.
IEEE,IEEE10742006.2006.EstndarparaelDesarrollodeProcesosdelCiclodeVida
delSoftware
6.
ISO,ISO12207.EstndarparalosprocesosdeCiclodeVidadelSoftware.2008.
7.
AENOR,UNE71044TecnologadelainformacinProcesosdelciclodevidadel
software.1999.
8.
IEEE,IEEE1219.1998.EstndardeMantenimientoSoftware
9.
ISO,ISO/IEC14764,inEstndarespecficosobreMantenimientodeSoftware.1998.
10.
CentrodeExcelenciadeSoftwareLibredeCastillaLaMancha,TallerdeMigracina
SoftwareLibre2009.
11.
DanielSez,M.P.,RicardRocayDavidAnes,MigracinalSoftwareLibre.Guade
BuenasPrcticas,I.T.d.Informatica,Editor.2007.
12.
InstitutoNacionaldeEstadsticaeInformtica,GuaparalaMigracindeSoftware
LibreenlasEntidadesPblicas.2002.
13.
LuisD.AguilarLemarroy,MigracinaSoftwareLibreaNivelCorporativoy
Gubernamental.2005.
14.
Hobbs,D.,WebsiteMigrationHandbook.Vol.2.2011.
15.
Robertson,J.Contentmigration:optionsandstrategies.2008;
http://www.steptwo.com.au.
149
16.
Robertson,J.,So,whatisacontentmanagementsystem?,inKMColumn.2003.
17.
SistemasdeGestindeContenidos.
http://es.wikipedia.org/wiki/Sistema_de_gesti%C3%B3n_de_contenidos.
18.
CMSJoomla!;http://www.joomla.org
19.
Joomla!OfficialDocumentation.Migratingfrom1.0.xto1.5Stable.2010;
http://docs.joomla.org/Migrating_from_1.0.x_to_1.5_Stable.
20.
com_migrator.
http://joomlacode.org/gf/download/frsrelease/4989/12702/migrator_beta2.zip.
21.
Matware.http://www.matware.com.ar/joomlaprojects/mtwmigrator.html.
150
AnexoI
ProcedimientosdeCopiasde
SeguridadenJoomla
151
152
Enesteanexoseexplicacmollevaracabounacopiadeseguridaddelsistemagestor
de contenidos Joomla. Para ello vamos a describir dos procedimientos distintos, uno
realizado de forma manual y otro realizado de forma automtica apoyndonos en una
extensindelCMS.
a)ProcedimientoManual
Este primer procedimiento se denomina manual porque no interviene ningn
componente ni extensin externa que sea necesaria instalar en el CMS para llevarlo a la
prctica. Para ello, necesitamos hacer una copia de seguridad de la estructura completa de
carpetasyarchivos,yunacopiadeseguridaddelabasededatos.
Utilizando un programa cliente de FTP, por ejemplo Filezilla, disponible en la web
http://filezillaproject.org/(verFiguraI.1),secopiantodaslascarpetasyarchivosdenuestro
sitio web. Simplemente elegir el sitio en el cual queremos guardarlos y realizar el proceso.
Una vez finalizada la descarga se debe comprobar que todo el proceso se ha realizado
correctamenteysinerrores.
FiguraI.1.SoftwareClienteFTPFilezilla
153
Pararealizarlacopiadeseguridaddelabasededatos,sepuedeutilizarlaaplicacin
de gestin de base de datos phpMyAdmin (www.phpmyadmin.net). En este caso, para
llevar a cabo su copia, se accede a esta aplicacin y se selecciona la base de datos deseada
(ver Figura I.2). A continuacin, se muestra una pgina con todas las tablas de la base de
datosconinformacindelosparmetrosqueladefinen.SeseleccionalapestaaExportar
paraaccederalapginaquedefinelaexportacindelabasededatoscompleta.
FiguraI.2.SoftwarephpMyAdmin
Paralaexportacin,mantenemoslasopcionesmarcadasquesemuestranpordefecto,
activandolasopcionesAadaDROPTABLEyAadaIFNOTEXISTScomosemuestra
enlaFiguraI.2,indicandoquesegenereunarchivodescargableyeligiendosilodeseamos
conalgntipodecompresin.Acontinuacin,sepulsasobreelbotnContinuaryseelige
lacarpetaenlacualqueremosguardarelarchivo.Estearchivoserdeextensinsql.
Conestosdosprocesos,seharealizadounacopiacompletadelsitioweb.
154
b)ProcedimientoAutomtico
Para realizar el procedimiento de manera automtica, hay que hacer uso de alguna
extensinparatalfindelasmuchasquepodemosencontrarenelrepositoriodeextensiones
del proyecto Joomla en la web http://extensions.joomla.org. En nuestro caso, a modo de
ejemplo, vamos a utilizar la extensin Akeeba backup (https://www.akeebabackup.com).
Esta extensin es de las ms utilizadas actualmente y es la sucesora de la extensin
JoomlaPack, que era utilizada para versiones de Joomla 1.0.x, y por lo tanto, ya no tiene
mantenimiento ni actualizaciones. La extensin Akeeba Backup es un componente que
permite hacer backups completos del sitio web, incluyendo todos los archivos y todo el
contenido de la base de datos, de una forma directa y con diversas opciones de
configuracin.
UnavezdescargadaeinstaladalaextensinennuestroCMS,accedemosalapartede
Backenddelsitio.DesdeComponentesAkeebaBackupaccedemosalcentrodecontroldel
componente.Desdeaqusepuedenconfigurardiversasopciones,crearperfilesparanuestras
copiasdeseguridad,iniciarlastareasderespaldo,etc.(verFiguraI.3).
FiguraI.3.PaneldecontroldelcomponenteAkkebaBackup
EnlaseccinAdministracindeperfiles,seofrecelaposibilidaddecreardistintos
perfilesparalasoperacionesdebackup.Paraello,seaccedealaopcinNuevoyseescribe
155
elnombredelperfilquesedeseecrear.Estopermitirmantenerdistintasconfiguracionesy
emplearlaquemsseadecueacadasituacin,consloseleccionarunouotroperfilenla
pantallaprincipaldelaextensinAkeebaBackup.
Una vez seleccionado el perfil adecuado, se puede acceder a Configuracin y
modificarlosparmetrosquesedeseen.Estaseccinconstadevariaspartesquepermitirn
configurarunnmerodeopcionesbastanteelevado:
Configuracin bsica: Desde aqu se permite modificar, entre otras opciones, el
nombredelarchivoderespaldo,eldirectoriodesalidadelosarchivosdebackupo
eltipodecopiadeseguridad.Estaltimaopcin,adems,ofrecelaposibilidadde
realizar una copia completa del sitio, una copia incremental de los archivos,
respaldarsololabasededatos,etc.(verFiguraI.4).
FiguraI.4.Opcionesdeconfiguracinbsicas
Configuracinavanzada:Enestaseccinsepuedenajustarparmetrosrelacionados
conelmotorderespaldodelabasededatos,eltipomotordearchivado(zip,jpa,
directo a ftp), separar en partes el archivo de salida del backup, e incluso enviar
estosarchivosporcorreoelectrnico(verFiguraI.5).
156
FiguraI.5.Opcionesdeconfiguracinavanzadas
Administracindecuota:Lacuotaportamaopermitedefinireltamaomximodel
conjuntodearchivosdebackupdeundeterminadoperfil.Cuandoeltamaodel
conjunto sobrepase el lmite establecido, las copias antiguas serneliminadas. La
cuotaporconteoestableceelnmerodearchivosderespaldoquepuedecontener
un perfil. Cuando se sobrepasa dicho nmero, las copias antiguas son borradas
(verFiguraI.6).
FiguraI.6.Opcionesdeadministracindelacuota
Ajustefino:Duranteelprocesoderespaldo,laextensinAkeebaBackuptieneque
realizar mltiples conexiones con su URL de backup, por lo que puede haber
problemas con el servidor, tanto por hacer demasiadas conexiones en muy poco
tiempo, como por hacer conexiones demasiado largas. Para evitar esto, se puede
ajustareltiempomnimoentrecadaconexinyeltiempomximodecadaunade
lasconexiones.Enlaltimaopcinsepermiteestablecerunmargenparaeltiempo
mximo de conexin. Cuanto menor sea el porcentaje, ms se ajustarn las
conexionesaltiempomximoestablecido(verFiguraI.7).
157
FiguraI.7.Opcionesdeajustefino
Ademsdetodasestasopciones,AkeebaBackupofrece laposibilidaddeexcluir de
nuestra copia de respaldo directorios, ficheros y tablas de la base de datos. Para ello basta
conaccederalasseccionesExclusindeficherosydirectoriosyExclusindetablasdela
basededatosyseleccionarloselementosdelosquenointeresahacercopiadeseguridad.
Unavezquesetengantodaslasopcionesanterioresbiendefinidas,sepuedecomenzarcon
elbackupdelsitioseleccionandomediantelaopcinRespaldarahora(verFiguraI.8).
FiguraI.8.Iniciodelprocesoderespaldo
Una vez finalizado el proceso, se mostrar una pantalla informando del xito de la
operacin. Desde aqu, se puede ver el archivo de registro o acceder a la pantalla de
administracindelosarchivosderespaldo(verFiguraI.9).
158
FiguraI.9.Resultadosobtenidostraselrespaldo
Finalmente,sisedeseaverunalistadelascopiasdeseguridaddelasquesedispone,
eliminar las que no sirvan o descargar aquellas que se necesiten, se podr hacer desde
Administrarficherosderespaldo.
Esteprocedimiento,unavezqueestcorrectamenteconfigurado,esmsrpidoque
el procedimiento manual explicado anteriormente, pero como contraposicin, al utilizarse
unaextensinexternaanuestroCMS,perdemostransparenciaenelprocesodelacopiade
seguridad,porloquehayqueconfiarenelcorrectofuncionamientodesta.
159
160
AnexoII
EstrategiasdeMigracinenJoomla
161
162
MuchosCMSnoproporcionanunsistemaparaactualizarlasversionesantiguashacia
otrasmsactuales.EsteeselcasodeJoomla1.5.LaconversindeunsitioenJoomladeuna
versinanterioraJoomla1.5requierelacreacindeunnuevositiodesdecero,usandouna
instalacinlimpiadeJoomlaenlaversin1.5quedeseemos,yluegotrasladarelcontenido
delsitioantiguoalsitionuevocreado.Estamigracindecontenidonoesunprocesodirecto,
eimplicaconversionesymodificacionesdelcontenidodeorigen[19].
Existen varios mtodos y extensiones para realizar la migracin. A continuacin
pasamosadescribirdosdeestosmtodos:
Un mtodo de migracin automatizado, que utiliza el componente de migracin
com_migrator[20]paracrearelvolcadodecontenidodelsitioantiguoalnuevo,y
una funcin de importacin inteligente incluida en la instalacin de Joomla 1.5,
que ejecuta las conversiones y modificaciones necesarias durante el proceso de
instalacin.
Otromtododemigracinautomatizado,utilizandoelcomponentemtwmigrator
[21].Enestecasoutilizamoslamismabasededatosparaelnuevositio,desdela
cualseextraerlainformacindelastablasdeJoomlayseconvertirstaparaque
seavlidaparalanuevaversindelCMS.
Seacualseaelmtodoaemplear,unavezllegadoaestepunto,sepresuponequese
han realizado las tareas previas necesarias, como son, la descarga de las diferentes
extensionescompatiblesconlaversinnuevadelCMSqueestnsiendoutilizadasenelsitio
actual, al igual que la plantilla, la descarga de la versin del CMS a instalar y la copia de
seguridad completa del sitio, tanto archivos como base de datos. Una vez realizado todos
estospasos,podemoscontinuarconelprocesodemigracin.
Acontinuacinrealizamosunadescripcindetalladadelosdiferentesmtodos:
163
a)MigracinAutomatizada.Mtodo1
Esteesunprocesoendosfasesyutilizadosherramientas.Laprimeraherramientaes
un componente de migracin llamado com_migrator [20]. Este componente de migracin
debe instalarse y ejecutarse en el sitio antiguo para crear el volcado de exportacin. La
segundaherramientaformapartedelprocesodeinstalacindeJoomla1.5.Estaherramienta
cargaelvolcadodecontenidoexportadoenelnuevositioyejecutatodaslasconversionesy
modificacionesnecesarias:
El primer paso es la descarga e instalacin del componente en el sitio antiguo.
Posteriormente, se accede a l desde el men componentes del administrador. Una vez
dentro,pulsarsobreeliconoDumpitparacreartresscriptsdeexportacincomprimidos.
El primero es una copia de respaldo del sitio antiguo, el segundo es el contenido de
migracindetodosloselementosdelncleoquesernimportadosalnuevositioyeltercero
es una copia de respaldo de las tablas de componentes de terceros. A continuacin pulsar
sobre el icono de descarga de los archivos de exportacin necesarios y se almacenan
localmente.
Una vez exportados los archivos necesarios, se realiza una instalacin limpia de
Joomla en la versin nueva. Se realizan los pasos generales de la instalacin hasta el paso
nmero 6 Configuracin. En este paso se elige la opcin de Cargar un script de
migracinenlaseccinCargarDatosdeEjemplo,RestauraroMigrarelcontenidodeuna
CopiadeRespaldo.EnelcampodePrefijodelastablasexistentesseintroduceelprefijo
utilizado en las tablas del contenido de origen, normalmente jos_. Seleccionar la
Codificacin del sitio anterior y en Script de migracin elegir el archivo generado
anteriormente por el componente com_migrator. A continuacin, pulsar el botn Subir y
Ejecutar.Semuestraunmensajeinformandodelxitodelaoperacinoensucasounalista
de errores. Continuar la instalacin normalmente, teniendo en cuenta que los datos del
administradorvlidossernlosmismosqueenelsitioantiguo.
164
b)MigracinAutomatizada.Mtodo2
Estemtododemigracinutilizaelcomponentemtwmigrator[21].Estecomponente
es utilizado para la migracin de la versin 1.0.x de Joomla a la versin 1.5.x. Para
posterioresversionesdeJoomlaseutilizalanuevaversindeestecomponentedenominada
jUpgrade.
EnestecasorealizamosunainstalacindeJoomlaenlanuevaversindirectamente,
noseinstalaelcomponenteenelsitioantiguocomoenelmtodoanterior.Enlosparmetros
deconexin(verFiguraII.1)introducimoslosmismosdatosquelosdelsitioantiguo,yaque
vamos a utilizar el mismo servidor y la misma base de datos. En este paso es muy
importante elegir bien el Prefijo de las tablas en la configuracin avanzada. Habr que
introducir el prefijo que se desee que tengan las nuevas tablas, no las que ya existen. Se
contina con la instalacin y en el paso 6 de Configuracin, no habr que seleccionar la
opcindeInstalarcontenidodeejemplopredeterminadonitampocolaopcindeCargar
un script de migracin como se haca en el mtodo anterior. Una vez finalizada la
instalacin,obtendremosunsitiowebenJoomlaconlanuevaversinenblanco.
165
FiguraII.1.Parmetrosdeconfiguracinparalaconexin
El siguiente paso es migrar el contenido del sitio anterior. Para ello accedemos al
panel de administracin e instalamos el componente mtwmigrator. A continuacin
accedemosaestecomponenteypulsamossobreelbotnconfiguracin(verFiguraII.2).En
esteapartadoseinsertanlosdatosdeconfiguracindelservidorydelabasededatosyenel
apartadoprefijoindicamoselprefijodelastablasdelsitiowebantiguo.Desdeestapantalla
tambin se permite elegir qu contenido deseamos migrar y ofrece la opcin de migrar
contenido de algunas extensiones de terceros. Una vez finalizada la configuracin, se hace
166
clicsobreelbotnEmpezarmigracinpararealizarlamismayfinalizarlamigracinde
contenido.
FiguraII.2.Paneldecontroldelcomponentemtwmigrator
167
168
AnexoIII
InventarioHardwareySoftware
169
170
Documentoparainventariodehardwareenelprocesodemigracin:
Informacindelinventariodehardware
Nombre:
ID
Empresa:
Sector:
Responsabledel
inventario:
Equipo
Nombredelequipo:
Comentarios:
SistemaOperativo
Nombre:
Versin:
ServicePack:
Procesador
Tipo:
Velocidad:
Nmerode
procesadores:
MemoriaRAM
Descripcin
Capacidad:
Velocidad(MHz):
NumerodeRanuras:
Almacenamiento(Lista)
Fabricante:
Modelo:
Descripcin(IDE,...):
Tipo:
Tamao
BIOS
Numeroserie:
Fabricante:
Modelo:
Versin:
Fecha:
171
Sonido
Fabricante:
Nombre:
Descripcin:
Tarjetavdeo
Nombre:
Chipset:
Memoria(MB):
Resolucin:
Red(Lista)
Descripcin:
Tipo(Ethernet,Fast
Ethernet...):
Velocidad:
DireccinMAC:
DireccinIP:
Mscara:
Puertadeenlace:
Numerodered:
172
Puertos(Lista)
Tipo(USB,
FireWire...):
Nombre:
Libre(Si,No):
Descripcin:
Documentoparainventariodesoftwareenelprocesodemigracin:
Informacindelinventariodesoftware
Nombre:
ID:
Empresa:
Sector:
Responsabledel
inventario:
Nombredel
programa:
Descripcin:
Software
Comentarios:
Plataforma
SistemaOperativo:
Maquinavirtualo
intrprete:
AspectosLegales
LicenciaSW:
Contratosde
mantenimiento:
RequisitosMnimos
Microprocesador:
Memoria:
Espacioendisco:
Accesoabasededatos
TipodeBBDD:
Marca:
Versin:
TamaodelaBBDD:
Libreras,softwareoserviciorelacionado(Lista)
LibreraoSW:
Versin:
Licencia:
ID:
Dispositivoshardwarenecesarios(Lista)
Descripcin
Descripcindefuncionalidades
173