---------------------------------------------------------------------------------- ---------------------------------------------------------------------------------- -- *** Feature Algebra: DVD Example *** -- *** (c) June 2006 by Peter Höfner, Ridha Khedri, Bernhard Möller *** ---------------------------------------------------------------------------------- ---------------------------------------------------------------------------------- import FeatureAlg ---------------------------------------------------------------------------------- ---------------------------------------------------------------------------------- -- *** basic features *** p_mp3 = bf "play mp3-files" r_mp3 = bf "record mp3-files" o_mp3 = bf "organize mp3-files" p_dvd = bf "play DVD" p_cd = bf "play CD" v_cd = bf "view picture CD" b_cd = bf "burn CD" a_cd = bf "play additional CD" c1 = bf "audio equaliser" c2 = bf "video algorithms" c3 = bf "dolby surround" neutral = bf "" ---------------------------------------------------------------------------------- ---------------------------------------------------------------------------------- -- *** more features *** mp3_player = p_mp3 .*. (opt [r_mp3]) dvd_player = p_dvd .*. (opt [p_cd , v_cd , b_cd , a_cd]) hd = opt [mp3_player, o_mp3] ---------------------------------------------------------------------------------- ---------------------------------------------------------------------------------- -- *** whole productline *** p_line = c1 .*. c2 .*. c3 .*. (mp3_player .+. dvd_player .+. hd) -- *** constrained product line *** constrained_p_line = p_line .-. dvd_player ----------------------------------------------------------------------------------