scieee Science in your language
[es] (orig)

RESDEC: Un prototipo de herramienta para la selección de configuraciones de despliegue basada en Sistemas de Recomendación

Abstract

Los sistemas de alta variabilidad son sistemas que representan cientos de configuraciones distintas. En un contexto particular, estas configuraciones pueden ser desplegadas en distintos entornos de despliegue lo cual es una decisión crítica para el correcto funcionamiento de la misma. Por ejemplo, determinar en qué dispositivo móvil se va a ejecutar correctamente nuestra app, es una tarea difícil de resolver. En este artículo presentamos RESDEC, un prototipo de herramienta para asistir al ingeniero de software en la toma de decisiones para el despliegue. Concretamente RESDEC provee algoritmos de recomendación para tres escenarios de despliegue distintos.

Read accessible full text

RESDEC: Un prototipo de herramienta para la selección de configuraciones de despliegue basada en Sistemas de Recomendación

Author: Rodas, Jorge L.; Galindo Duarte, José Ángel; Benavides Cuevas, David Felipe
Publisher: Asociación de Ingeniería del Software y Tecnologías de Desarrollo de Software (SISTEDES)
Year: 2018
Source: https://idus.us.es/bitstreams/6ac909da-54d7-4f16-971f-2ee80bb5e00e/download
RESDEC: Un p o o ipo de he amien a pa a la
selecci´on de con igu aciones de despliegue
basado en Sis emas de Recomendaci´on
Jo ge L. Rodas1, Jos´e A. Galindo2, and Da id Bena ides2
1Uni e sidad Es a al de Milag o, Facul ad de Ciencias de la Ingenie ´ıa, Cdla.
Uni e si a ia Km 1 1/2 ´ıa Km 26, Milag o - Ecuado ,
[email p o ec ed]
2Uni e sidad de Se illa, Dep . Lenguajes y Sis emas In o m´a icos, A . Reina
Me cedes s/n Se illa - Espa˜na,
[jagalindo,bena ides]@us.es
Abs ac . Los sis emas de al a a iabilidad son sis emas que ep e-
sen an cien os de con igu aciones dis in as. En un con ex o pa icula ,
es as con igu aciones pueden se desplegadas en dis in os en o nos de
despliegue lo cual es una decisi´on c ´ı ica pa a el co ec o uncionamien o
de la misma. Po ejemplo, de e mina en qu´e disposi i os m´o iles se a
a ejecu a co ec amen e nues a app, es una a ea di ´ıcil de esol e . En
es e a ´ıculo p esen amos RESDEC, un p o o ipo de he amien a pa a
asis i al ingenie o de so wa e en la oma de decisiones pa a el despliegue.
Conc e amen e RESDEC p o ee algo i mos de ecomendaci´on pa a es
escena ios de despliegue dis in os.
Keywo ds: Sis emas de al a a iabilidad, Sis emas de ecomendaci´on, Valo-
aciones, Con igu aciones
1 An eceden es
Los sis emas de al a a iabilidad son sis emas de so wa e cuyo compo amien o
se puede pe sonaliza de acue do con las necesidades espec´ı icas de un con ex o
pa icula [2]. Los modelos de ca ac e ´ıs icas [7] se han con e ido en el es ´anda
de ac o pa a ep esen a ca ac e ´ıs icas comunes y a iables en Va iabili y-
in ensi e Sys em (VIS). Cuando el n´ume o de combinaciones en un modelo c ece
exponencialmen e, hace que el an´alisis y la mejo a de dichos sis emas sea una
ac i idad cos osa y p opensa a e o es. Pa a ali ia el p oblema, in es igado es
han p opues o el uso del an´alisis au oma izado de modelos de ca ac e ´ıs icas [3].
Sin emba go, es e p oblema se uel e cada ez m´as di ´ıcil cuando hay m´ul iples
y di e sas pla a o mas pa a implemen a un p oduc o. Po ejemplo, pa a decidi
en qu´e pla a o mas de implemen aci´on es mejo ins ala D upal o Wo dp ess, o
en qu´e el´e onos m´o iles debemos ins ala una aplicaci´on de And oid [5]. En
ales casos, la selecci´on de la pla a o ma de implemen aci´on ´op ima se con ie e
en una ac i idad c ´ı ica que puede a ec a la expe iencia del usua io.
En la indus ia, podemos encon a p opues as basadas en p opiedades es-
uc u ales y a ibu os de calidad que apun an a selecciona con igu aciones
´op imas pa a una a iedad de casos de uso, como el es ing o la p edicci´on
del endimien o. Sin emba go, hay una al a de sopo e pa a bene icia se de
o os a e ac os, ales como in o mes de usua ios o ankings de aplicaciones que
e al´uan qu´e an bien se ealiz´o una con igu aci´on en una pla a o ma de im-
plemen aci´on conc e a. En es e documen o, p oponemos explo a in o mes de
usua ios pa a guia la selecci´on de pla a o mas de implemen aci´on; es o es, pa a
encon a qu´e pla a o mas de implemen aci´on se adap an mejo a un usua io
conc e o y a una con igu aci´on espec´ı ica.
En consecuencia, hemos encon ado en los sis emas de ecomendaci´on una
al e na i a ideal pa a guia al usua io en la b´usqueda de con igu aciones de im-
plemen aci´on que sa is agan sus necesidades. Un sis ema de ecomendaci´on es un
so wa e que, en unci´on de los da os exis en es, in en a p edeci p oduc os pa a
que se adap en mejo a las necesidades o gus os de un usua io [4]. En es e pape
p esen amos RESDEC(Recommenda ion Sys em o Selec ing Deploymen Con-
igu a ions), un p o o ipo de he amien a basada en sis emas de ecomendaci´on
que ayuda al ingenie o de so wa e a selecciona el mejo en o no de despliegue
pa a con igu aciones de VIS basadas en in o mes de usua ios.
2 RESDEC: Un p o o ipo de he amien a pa a
ecomenda es a egias de despliegue
RESDEC ue dise˜nado pa a sopo a dos ases al como se mues a en la Figu a
1.
Base de Conocimien o
Gene ado de Recomendaciones
12
In o mación
Basado en il ado
colabo a i o
Basado en il ado
po con enido
Basado en
popul idad
Escena ios de despliegue
A anque en ce o
T ansición en e pla a o mas de
despliegue basadas en alo aciones
T ansición en e pla a o mas de
despliegue basadas en ca ac e ís icas
En o no de a iabilidad
105
Algo i mos
Selección
Escena io
Fig. 1. Fases pa a es ablece ecomendaciones en escena ios de despliegue
2.1 Base de conocimien o:
La base de conocimien o con iene la in o maci´on sob e la sa is acci´on de los
usua ios en despliegues an e io es. Es a in o maci´on puede ep esen a c i e ios
de e aluaci´on dados p e iamen e po los usua ios en elaci´on a gus os, uncional-
idad, e o es o despe ec os que puede p esen a un p oduc o. En nues o caso,
los alo es que se ex aen de los in o mes de usua ios, e lejan los ni eles de
sa is acci´on en elaci´on al uso de un p oduc o po pa e del usua io.
2.2 Gene ado de Recomendaciones:
RESDEC se ejecu a en es escena ios di e en es de acue do a las necesidades
espec´ı icas del ingenie o de so wa e:
P ime despliegue o a anque en ce o. El p ime escena io se p esen a
cuando un usua io nue o del sis ema desea conoce qu´e con igu aciones se ´ıan las
m´as adecuadas pa a un p oyec o en pa icula . Es o ocu e po ejemplo, cuando
el ingenie o de so wa e cons uye un si io web nue o y necesi a una asis encia
guiada en la selecci´on de plugins que pod ´ıan se ins alados den o del si io.
Pa a ealiza ecomendaciones en es e escena io hemos empleado un algo-
i mo basado en popula idad, pe enecien e al g upo de algo i mos no pe son-
alizados. Aunque el m´e odo de ecomendaci´on que u iliza es e algo i mo pa ece
simple, es uno de los m´as popula es en escena ios eales, ales como: la lis a de
p oduc os m´as endidos en Amazon, los ´ıdeos con mayo isi as en Y ou ube,
las canciones m´as escuchadas en Spo i y, las pel´ıculas m´as is as en Ne lix,
en e o os.
T ansici´on en e pla a o mas de despliegue basadas en alo aciones.
El segundo escena io se p esen a cuando un usua io que ha usado p e iamen e
una con igu aci´on de un p oduc o quie e explo a o as con igu aciones pa a
ob ene nue as al e na i as de ecomendaci´on. Es o ocu e, po ejemplo, cuando
el ingenie o de so wa e iene publicado un si io web que inco po a una se ie de
plugins y basado en esa expe iencia desea conoce qu´e o os plugins simila es
a los ins alados pod ´ıan ambi´en implemen a se; pa a ello, el sis ema u iliza
in o maci´on de unos usua ios pa a p oduci ecomendaciones a o os.
Pa a ealiza es e ipo de ecomendaciones hemos in eg ado en RESDEC
es algo i mos de ecomendaci´on basados en il ado colabo a i o (FC). Seg´un
la clasi icaci´on, del g upo Neighbo hood-based Collabo a i e Fil e ing (Knn) [6]
hemos seleccionado el algo i mo ”KNNBasic” y el algo i mo ”KNNWi hMeans”;
y del g upo Model-based Collabo a i e Fil e ing hemos elegido el algo i mo de
ac o izaci´on de ma ices SVD (Singula Value Decomposi ion).
T ansici´on en e pla a o mas de despliegue basadas en ca ac e ´ıs icas.
El e ce escena io adem´as de u iliza las alo aciones que ecibe una con igu-
aci´on, ambi´en conside a las ca ac e ´ıs icas que el usua io de ine pa a las con-
igu aciones que el sis ema de uel e. Cuando un usua io especi ica las ca ac-
e ´ıs icas eque idas pa a una con igu aci´on es ´acil pa a el sis ema encon a las
con igu aciones que mejo se adap en den o de esos equisi os y de esa mane a
es ablece las mejo es ecomendaciones.
Es o ocu e po ejemplo, cuando el ingenie o de so wa e es ´a desa ollando
un si io web y necesi a ins ala un conjun o de plugins que se ajus en a los
eque imien os del si io, en es e caso a a ´es de los ags asociados a los plugins se
pod ´ıan encon a ´acilmen e plugins pa a el ca ´alogo de p oduc os, el buscado
de p oduc os, la pasa ela de pagos, el ca i o de comp as en e o os componen es
que pod ´ıan eque i se pa a el co ec o uncionamien o del si io web.
Pa a hace ecomendaciones basados en la desc ipci´on de cada con igu aci´on,
hemos in eg ado en RESDEC dos algo i mos basados en il ado po con enido,
Rocchio [1] y kNN [8], es e ´ul imo simila al u ilizado po el g upo de il ado
colabo a i o no obs an e su a iaci´on adica en la unci´on de simili ud u ilizada.
2.3 Da ase s y alidaci´on.
Da ase de disposi i os And oid: Pa a ecopila la in o maci´on de And oid,
se ealiz´o una encues a a 2,099 usua ios de la comunidad de es udian es y do-
cen es de la Uni e sidad Es a al de Milag o, Ecuado . Es o nos pe mi i´o cono-
ce qu´e aplicaciones son las m´as u ilizadas po los usua ios, los disposi i os que
u ilizan y las pun uaciones que o o gan a las aplicaciones ins aladas en sus dis-
posi i os de acue do al uncionamien o que han enido en el mismo. Despu´es
de conoce los disposi i os usados po los usua ios encues ados, ob u imos in-
o maci´on expl´ıci a sob e las ca ac e ´ıs icas de cada uno de ellos a a ´es de
in o maci´on disponible en el si io web h p://www.gsma ena.com/.
Da ase de Wo dp ess: Es e da ase con iene in o maci´on sob e el ges o
de con enidos wo dp ess. Pa a ob ene in o maci´on de es e en o no, se desa oll´o
un c awle que ex ae da os que elaciona los plugins con los ags asociados
a los mismos. Es o nos pe mi i´o conoce qu´e plugins son los m´as u ilizados
po los usua ios y las pun uaciones que se les o o gan. La b´usqueda sigui´o un
p oceso sis em´a ico pa a ex ae da os u ilizando el sis ema de p ueba Selenium
(h p://www.seleniumhq.o g/).
Resul ados: Nues as p uebas incluye on la gene aci´on au om´a ica de e-
comendaciones de en e un conjun o de da os de 832 disposi i os m´o iles en
And oid y 634 plugins de Wo dp ess.
Acceso al c´odigo y demos aci´on del p o o ipo. El c´odigo uen e de RES-
DEC se puede desca ga desde el si io web del p oyec o h ps://gi hub.com/
RESDEC. La he amien a jun o con el conjun o de da ase s p esen ados en es e
abajo, es ´a disponible en el si io web de RESDEC h p:// esdec.com/.
Re e ences
1. Gediminas Adoma icius and Alexande Tuzhilin. Towa d he nex gene a ion o ec-
ommende sys ems: A su ey o he s a e-o - he-a and possible ex ensions. Knowl-
edge and Da a Enginee ing, IEEE T ansac ions on, 17(6):734–749, 2005.
2. Muhammad Ali Baba , Lianping Chen, and Fo es Shull. Managing a iabili y in
so wa e p oduc lines. So wa e, IEEE, 27(3):89–91, 2010.
3. Da id Bena ides, Se gio Segu a, and An onio Ruiz-Co ´es. Au oma ed analysis o
ea u e models 20 yea s la e : A li e a u e e iew. In o ma ion Sys ems, 35(6):615–
636, 2010.
4. Jes´us Bobadilla, Fe nando O ega, An onio He nando, and Ab aham Gu i´e ez.
Recommende sys ems su ey. Knowledge-Based Sys ems, 46:109–132, 2013.
5. Jos´e A Galindo, Hamil on Tu ne , Da id Bena ides, and Jules Whi e. Tes ing
a iabili y-in ensi e sys ems using au oma ed analysis: an applica ion o and oid.
So wa e Quali y Jou nal, pages 1–41, 2014.
6. Anil K Jain. Da a clus e ing: 50 yea s beyond k-means. Pa e n ecogni ion le e s,
31(8):651–666, 2010.
7. Kyo C Kang, Sholom G Cohen, James A Hess, William E No ak, and A Spence Pe-
e son. Fea u e-o ien ed domain analysis ( oda) easibili y s udy. Technical epo ,
DTIC Documen , 1990.
8. Michael Pazzani and Daniel Billsus. Lea ning and e ising use p o iles: The iden-
i ica ion o in e es ing web si es. Machine lea ning, 27(3):313–331, 1997.
Ap´endice A: Tiempo planeado pa a la p esen aci´on de la
he amien a
5min – P esen aci´on del p oblema y alcance de la he amien a.
5min – P esen aci´on del p oblema al que se di ige RESDEC con un b e e
ejemplo de la aplicaci´on.
5min – Demos aci´on de los ipos de ecomendaci´on que RESDEC emplea pa a
di e en es escena ios.
5min – Demos aci´on de las capacidades de la he amien a pa a selecciona y
p io iza con igu aciones en un conjun o de da os de disposi i os m´o iles
And oid.
5min – Conclusiones del abajo

Ap´endice B.- Cap u as de pan alla de la he amien a:
Caso ANDROID
Fig. 2. Pan alla p incipal de RESDEC, en la pa e izquie da un men´u lo an e mues a
las opciones ag upadas po el en o no de despliegue y el ges o de ecomendaciones.
Fig. 3. La en ana de p oduc os pe mi e la ges i´on (c eaci´on, modi icaci´on y elimi-
naci´on) de los p oduc os (disposi i os) pe enecien es al en o no de a iabilidad medi-
an e el cual el sis ema es ablece las ecomendaciones.
Fig. 4. La en ana de Apps, pe mi e la ges i´on c eaci´on, modi icaci´on y eliminaci´on)
de las aplicaciones que ue on desplegadas en los disposi i os egis ados en la opci´on
p oduc os.
Fig. 5. Mues a los esul ados ob enidos cuando se ejecu a el p ime escena io de nues-
a p opues a, en es e caso se obse a las ecomendaciones basadas en el op de popu-
la idad.