论文部分内容阅读
随着开源软件的逐步发展,在闭源软件中使用开源代码的情况变得越来越普遍。混源软件正是伴随着开源软件的发展而逐渐产生的一个概念,其整个软件的代码是由开源代码和自主代码所共同组成的,正是由于其包含了自主代码和开源代码,因而使得其与开源软件相比具有更高的多样性和复杂性,因此对其质量的度量评估相较于传统的开源软件要更加复杂一些,包括了知识产权风险,许可证差异分析等等。为了更有效的度量混源软件的各项指标,我们有必要对其内部的文件和代码组成结构进行识别和统计分析,从而有利于使用者更加精准的定位软件中各组成成分之间的关联关系,为进一步软件度量评估和再开发提供便利,具有实际的应用价值。本文对混源软件组成成分分析系统的设计与实现过程进行了详细介绍,包括了方法分析,系统需求分析与概要设计,系统详细设计与实现,以及系统测试。该系统对于输入的混源软件,能够快速分析出软件中不同编程语言文件的数量与占比,并识别出混源软件中的开源代码,并统计开源代码占比。本论文的主要工作包括:(1)通过调研文本分类和文本复制检测领域的相关研究现状,提出了对混源项目进行编程语言和开源代码进行识别的方法,并对相关方法进行了实验分析。(2)对系统进行了需求分析与概要设计,确定了系统的设计目标、功能需求和非功能需求,并对系统的软硬件环境、架构、数据库、核心模块进行了设计。(3)对系统进行了详细设计与实现,包括了系统核心模块的时序图、实现类图、关键代码等,并对其做了相关说明。(4)依据需求对本系统进行了测试。测试结果表明,本系统有着不错的分析效果,具有实际的工程应用价值。