1.一种基于大数据的软件模块划分方法,其特征在于,包括:
根据软件的实现功能,生成对应数量的多个子功能元素;
根据多个子功能元素之间的接口调用关系,得到功能关系矩阵,包括:在每个所述子功能元素对应的代码的起始位置处和终结位置处分别设置起始接口点和终止接口点;根据所述起始接口点和所述终止接口点获取每个所述子功能元素之间对应的接口调用关系,得到所述功能关系矩阵;
为不同类型的所述子功能元素设定不同的权重值,根据所述权重值对所述功能关系矩阵进行分级;
根据分级后的所述功能关系矩阵,将一个或多个所述子功能元素划分为一个功能模块以得到多个功能模块;每个所述功能模块中包括所有分级对应的所述子功能元素,包括:计算每一个所述子功能元素的失效概率;根据分级后的所述功能关系矩阵,以及每个所述子功能元素的失效概率,将一个或多个所述子功能元素划分为一个所述功能模块以得到多个所述功能模块;
在一个所述功能模块中,不同级之间的子功能元素之间的接口数量最少。
2.根据权利要求1所述的方法,其特征在于,在一个所述功能模块中,不同级之间的所述子功能元素之间的总失效概率最低。
3.根据权利要求1所述的方法,其特征在于,所述不同类型包括事物类型,关联深度、关联次数。
4.根据权利要求1‑3任一项所述的方法,其特征在于,采用马尔可夫聚类方法对所述子功能元素进行聚类分析,以得到多个所述功能模块。
5.根据权利要求4所述的方法,其特征在于,对所述聚类分析进行结果优化;所述结果优化采用遗传算法或爬山算法。
6.一种基于大数据的软件模块划分系统,其特征在于,包括子功能生成模块、接口调用查询模块、矩阵分级模块和划分模块;其中,所述子功能生成模块用于,根据设定需求生成子功能集合;所述子功能集合中包括多个子功能元素;每个所述子功能元素对应需要实现的一种软件功能;
所述接口调用查询模块用于,在每个所述子功能元素对应的代码的起始位置处和终结位置处分别设置起始接口点和终止接口点;根据所述起始接口点和所述终止接口点获取每个所述子功能元素之间对应的接口调用关系,得到功能关系矩阵;
所述矩阵分级模块用于,为不同类型的所述子功能元素设定不同的权重值,根据所述权重值对所述功能关系矩阵进行分级;
所述划分模块用于,根据所述接口调用关系、每个所述子功能元素的失效概率和每个所述子功能元素的事务类型中的至少一个参数,将分级后的所述功能关系矩阵划分为多个功能模块。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令,当所述指令在如权利要求1所述的基于大数据的软件模块划分系统上运行时,使得所述系统执行如权利要求1‑5任一项所述的基于大数据的软件模块划分方法。