请帮我。我想通过考虑特征模型的约束来找到所有可能的特征组合。如图所示。有没有通用的公式或工具?请建议我任何自动方法。
功能型号:
对于“替代”,计算 2^n(n =“替代”项目的数量)。对于“或”,计算 2^(n-1)(n =“或”项的数量)
例如,在这个特征模型中,可能的组合是,2^3 + 2^1 = 10
你可以试试FeatureIDE。您需要为带有约束的图 1 创建一个特征模型。然后,您需要在不选择任何功能的情况下进行一项配置。它将向您显示可以生成的可用配置(或您所称的组合)的数量。
兄弟!您正在阅读以下论文吗?
赫纳德、克里斯托弗等人。“PLEDGE:产品线编辑器和测试生成工具。” 国际软件产品线会议同地研讨会。2013:126-129。
有一些语言描述了特征模型中的约束。但我认为公式应该是手动编写的,例如cnf
文件可以,
c 1 Mobilephone
c 2 Calls
c 3 GPS
...
p cnf 10 X
-1 2 0
-1 3 0
...
一种通用的方法是将特征模型转换为谓词逻辑公式(使用含义,或者,xor ..您需要自动执行此操作吗!?我不确定它有多难)并将其转换为析取范式。那是连词的析取——每个连词代表一组解;未提及的文字没有影响。
有可用的科学工作,搜索例如“产品线变体需求的逻辑验证”或“使用一阶逻辑进行产品线模型验证”