SlideShare una empresa de Scribd logo
1 de 35
Descargar para leer sin conexión
Extending the R programming language to create
and manage Boolean models encoded as BDDs
Sergio Bra Guti´errez
M´aster Universitario en Ingenier´ıa de Software y Sistemas Inform´aticos
Universidad Nacional de Educaci´on a Distancia
05 de julio de 2017
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Soluci´on tradicional para construir un conjunto de n
productos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Ingenier´ıa de las L´ıneas de Producto Software
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Casos de estudio
Motorola
CelsiusTech Systems
Hewlett Packard
Naval Undersea Warfare Center
Lockheed Martin and U.S. Navy
General Dynamics and U.S. Army
U.S. National Reconnaissance Office
...
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Modelos de caracter´ısticas
Gran complejidad
Alto n´umero de caracter´ısticas
Relaciones muy complicadas
Mobile Phone
Calls GPS Screen
Basic Colour High resolution Camera MP3
Media
Mandatory
Optional
Alternative
Or
Requires
Excludes
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
¿C´omo construir SPLs?
Mapeo de relaciones entre caracter´ısticas y operaciones l´ogicas
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
BDDs
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
BDDs
Reducción
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Ordenaci´on BDD
Los BDDs son muy sensibles a la ordenaci´on de sus nodos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
¿C´omo trabajar con BDDs?
Librer´ıas C
Ventajas
Capacidad de c´omputo
Prop´osito espec´ıfico:
Funciones orientadas a
satisfacer una necesidad
Eficiencia del c´odigo
producido
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
¿C´omo trabajar con BDDs?
Librer´ıas C
Ventajas
Capacidad de c´omputo
Prop´osito espec´ıfico:
Funciones orientadas a
satisfacer una necesidad
Eficiencia del c´odigo
producido
Inconvenientes
Escasa capacidad de
explotaci´on estad´ıstica
Prop´osito espec´ıfico:
Poca versatilidad
Capacidad gr´afica poco
eficiente
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
¿C´omo trabajar con BDDs?
R
Ventajas
Herramienta muy
poderosa a nivel
estad´ıstico
Facilidad para a˜nadir
funcionalidades
adicionales
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
¿C´omo trabajar con BDDs?
R
Ventajas
Herramienta muy
poderosa a nivel
estad´ıstico
Facilidad para a˜nadir
funcionalidades
adicionales
Inconvenientes
No incluye posibilidad de
trabajar con BDDs
Ineficiente en funciones
de prop´osito general
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
SPL
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
SPL Modelo de
características
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
SPL Modelo de
características
Función lógica
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
SPL Modelo de
características
Función lógica
BDD
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
SPL Modelo de
características
Función lógica
BDD
Librerías C
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
SPL Modelo de
características
Función lógica
BDD
Librerías CR
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Necesidad detectada
SPL Modelo de
características
Función lógica
BDD
Librerías CR
¿?
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Arquitectura propuesta
Propuesta
Dise˜no y desarrollo de un wrapper que permita encapsular llamadas
a librer´ıas con las que gestionar BDDs desde R
BuDDy
CUDD
Function1 C++
Function2 C++
FunctionN C++
C++ Facade
Wrapper
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
API dise˜nada
Creaci´on y personalizaci´on de BDDs
init bdd, set max node num, set cache ratio, reset bdd
Creaci´on y gesti´on de variables
new variable, new variable from expression, add cnf var,
restrict bdd
Operaciones de consulta
print bdd, get bdd library, get node num, is initialized,
print variables, expression to string
Operaciones sobre BDDs
apply bdd, done bdd, reorder bdd, same bdd
Operaciones de E/S
read bdd, save bdd
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
rbdd en acci´on
Mobile Phone
Calls GPS Screen
Basic Colour High resolution Camera MP3
Media
Mandatory
Optional
Alternative
Or
Requires
Excludes
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
Conclusiones
Objetivos alcanzados:
1 Creaci´on de una librer´ıa capaz de crear y gestionar BDDs
2 Interfaz amigable, bien documentada
Se han dise˜nado una serie de casos de uso y discutido sus
resultados
1 Propagador de se˜nal
2 Cobertura de decisiones
3 Modelos de caracter´ısticas
4 Estudio de la reordenaci´on de los nodos en BDDs
Soluci´on libre: el c´odigo y ejemplos de uso est´an en
repositorios p´ublicos → cualquiera puede modificar el c´odigo
en funci´on de las necesidades
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
Ingenier´ıa de las L´ıneas de Producto Software
Diagramas de Decisi´on Binario
R como entorno de c´omputo y gr´afico
Soluci´on dise˜nada
Conclusiones y l´ıneas futuras
L´ıneas futuras
A˜nadir m´as gestores de BDDs
M´as operaciones sobre los BDDs
Publicaci´on de la librer´ıa en el CRAN
Interfaz orientada a objetos
Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia

Más contenido relacionado

Similar a TFM presentation

programacion INFORMATICA.pptx
programacion INFORMATICA.pptxprogramacion INFORMATICA.pptx
programacion INFORMATICA.pptxDavidOrtega737036
 
LA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPLA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPKudos S.A.S
 
ADS - Sesion1
ADS - Sesion1ADS - Sesion1
ADS - Sesion1willy0303
 
Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...
Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...
Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...Juan Carlos Olivares Rojas
 
Tecnología CASE
Tecnología CASE Tecnología CASE
Tecnología CASE fredi141x
 
075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devices
075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devices075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devices
075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devicesGeneXus
 
Top mejores programas arquitectónicos
Top mejores programas arquitectónicosTop mejores programas arquitectónicos
Top mejores programas arquitectónicosGabriel Quintana
 
Programa Superior en Realidad Virtual y Aumentada
Programa Superior en Realidad Virtual y AumentadaPrograma Superior en Realidad Virtual y Aumentada
Programa Superior en Realidad Virtual y AumentadaICEMD
 
Prueba informatica
Prueba informaticaPrueba informatica
Prueba informaticaJuan Gunsha
 

Similar a TFM presentation (20)

programacion INFORMATICA.pptx
programacion INFORMATICA.pptxprogramacion INFORMATICA.pptx
programacion INFORMATICA.pptx
 
LA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPLA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUP
 
ADS - Sesion1
ADS - Sesion1ADS - Sesion1
ADS - Sesion1
 
Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...
Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...
Comparativa y Evaluación de las Herramientas de Programación en Dispositivos ...
 
Tecnología CASE
Tecnología CASE Tecnología CASE
Tecnología CASE
 
Lectura 1
Lectura 1Lectura 1
Lectura 1
 
075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devices
075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devices075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devices
075 tecnologias involucradas-en_ciclo_de_desarrollo_para_smart_devices
 
Softwares mio
Softwares mioSoftwares mio
Softwares mio
 
Top mejores programas arquitectónicos
Top mejores programas arquitectónicosTop mejores programas arquitectónicos
Top mejores programas arquitectónicos
 
Analisis del curso de diseño en 2D y 3D
Analisis del curso de diseño en 2D y 3DAnalisis del curso de diseño en 2D y 3D
Analisis del curso de diseño en 2D y 3D
 
Tarea 5..
Tarea 5..Tarea 5..
Tarea 5..
 
Tarea 5..
Tarea 5..Tarea 5..
Tarea 5..
 
Software en el area de diseño
Software en el area de diseñoSoftware en el area de diseño
Software en el area de diseño
 
Software
SoftwareSoftware
Software
 
ingenieria de software
ingenieria de softwareingenieria de software
ingenieria de software
 
Programa Superior en Realidad Virtual y Aumentada
Programa Superior en Realidad Virtual y AumentadaPrograma Superior en Realidad Virtual y Aumentada
Programa Superior en Realidad Virtual y Aumentada
 
Estimacion de costos del Software
Estimacion de costos del SoftwareEstimacion de costos del Software
Estimacion de costos del Software
 
Unidad 3 elaboracion de un proyecto (4.1)
Unidad  3   elaboracion de un proyecto (4.1)Unidad  3   elaboracion de un proyecto (4.1)
Unidad 3 elaboracion de un proyecto (4.1)
 
Prueba informatica
Prueba informaticaPrueba informatica
Prueba informatica
 
P informatica
P informaticaP informatica
P informatica
 

TFM presentation

  • 1. Extending the R programming language to create and manage Boolean models encoded as BDDs Sergio Bra Guti´errez M´aster Universitario en Ingenier´ıa de Software y Sistemas Inform´aticos Universidad Nacional de Educaci´on a Distancia 05 de julio de 2017
  • 2. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 3. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 4. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 5. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 6. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 7. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 8. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 9. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 10. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 11. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Soluci´on tradicional para construir un conjunto de n productos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 12. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Ingenier´ıa de las L´ıneas de Producto Software Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 13. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Casos de estudio Motorola CelsiusTech Systems Hewlett Packard Naval Undersea Warfare Center Lockheed Martin and U.S. Navy General Dynamics and U.S. Army U.S. National Reconnaissance Office ... Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 14. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Modelos de caracter´ısticas Gran complejidad Alto n´umero de caracter´ısticas Relaciones muy complicadas Mobile Phone Calls GPS Screen Basic Colour High resolution Camera MP3 Media Mandatory Optional Alternative Or Requires Excludes Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 15. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras ¿C´omo construir SPLs? Mapeo de relaciones entre caracter´ısticas y operaciones l´ogicas Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 16. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras BDDs Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 17. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras BDDs Reducción Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 18. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Ordenaci´on BDD Los BDDs son muy sensibles a la ordenaci´on de sus nodos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 19. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras ¿C´omo trabajar con BDDs? Librer´ıas C Ventajas Capacidad de c´omputo Prop´osito espec´ıfico: Funciones orientadas a satisfacer una necesidad Eficiencia del c´odigo producido Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 20. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras ¿C´omo trabajar con BDDs? Librer´ıas C Ventajas Capacidad de c´omputo Prop´osito espec´ıfico: Funciones orientadas a satisfacer una necesidad Eficiencia del c´odigo producido Inconvenientes Escasa capacidad de explotaci´on estad´ıstica Prop´osito espec´ıfico: Poca versatilidad Capacidad gr´afica poco eficiente Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 21. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras ¿C´omo trabajar con BDDs? R Ventajas Herramienta muy poderosa a nivel estad´ıstico Facilidad para a˜nadir funcionalidades adicionales Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 22. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras ¿C´omo trabajar con BDDs? R Ventajas Herramienta muy poderosa a nivel estad´ıstico Facilidad para a˜nadir funcionalidades adicionales Inconvenientes No incluye posibilidad de trabajar con BDDs Ineficiente en funciones de prop´osito general Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 23. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 24. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada SPL Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 25. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada SPL Modelo de características Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 26. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada SPL Modelo de características Función lógica Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 27. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada SPL Modelo de características Función lógica BDD Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 28. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada SPL Modelo de características Función lógica BDD Librerías C Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 29. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada SPL Modelo de características Función lógica BDD Librerías CR Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 30. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Necesidad detectada SPL Modelo de características Función lógica BDD Librerías CR ¿? Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 31. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Arquitectura propuesta Propuesta Dise˜no y desarrollo de un wrapper que permita encapsular llamadas a librer´ıas con las que gestionar BDDs desde R BuDDy CUDD Function1 C++ Function2 C++ FunctionN C++ C++ Facade Wrapper Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 32. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras API dise˜nada Creaci´on y personalizaci´on de BDDs init bdd, set max node num, set cache ratio, reset bdd Creaci´on y gesti´on de variables new variable, new variable from expression, add cnf var, restrict bdd Operaciones de consulta print bdd, get bdd library, get node num, is initialized, print variables, expression to string Operaciones sobre BDDs apply bdd, done bdd, reorder bdd, same bdd Operaciones de E/S read bdd, save bdd Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 33. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras rbdd en acci´on Mobile Phone Calls GPS Screen Basic Colour High resolution Camera MP3 Media Mandatory Optional Alternative Or Requires Excludes Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 34. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras Conclusiones Objetivos alcanzados: 1 Creaci´on de una librer´ıa capaz de crear y gestionar BDDs 2 Interfaz amigable, bien documentada Se han dise˜nado una serie de casos de uso y discutido sus resultados 1 Propagador de se˜nal 2 Cobertura de decisiones 3 Modelos de caracter´ısticas 4 Estudio de la reordenaci´on de los nodos en BDDs Soluci´on libre: el c´odigo y ejemplos de uso est´an en repositorios p´ublicos → cualquiera puede modificar el c´odigo en funci´on de las necesidades Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia
  • 35. Ingenier´ıa de las L´ıneas de Producto Software Diagramas de Decisi´on Binario R como entorno de c´omputo y gr´afico Soluci´on dise˜nada Conclusiones y l´ıneas futuras L´ıneas futuras A˜nadir m´as gestores de BDDs M´as operaciones sobre los BDDs Publicaci´on de la librer´ıa en el CRAN Interfaz orientada a objetos Sergio Bra Guti´errez Universidad Nacional de Educaci´on a Distancia