- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
FH/QR/DESIGN/002
Subversion代码统计及取源代码工具设计方案
文件编号: FH/GYSJ/XX/XXXX-XXX
文件版本: 0.0.1
拟 制: 何永刚2010年1月22日审 核: 年 月 日
批 准: 年 月 日
FH/QR/DESIGN/002
FH/QR/DESIGN/002
(R2.0.0PAGE10(18)
(R2.0.0
PAGE10(18)
2019-07-28
修改记录
序号
版本号
生效日期
变更理由/变更内容
变更人
备注
1
2
3
4
5
目 录
目 录 3
术语与缩写解释 4
系统概述 4
背景 4
功能目标 4
系统总体结构 5
模块划分结构图 5
数据流程说明 7
数据流程图 7
数据处理流程: 8
主要数据说明: 11
模块设计 13
参考资料 错误!未定义书签。
术语与缩写解释
缩写、术语
缩写、术语
解释
REPOS_PATH
SubversionRepositoryPath,Subversion数据仓库路径
系统概述
背景
部门决定更换版本控制工具,从VisualSourceSafe更换至Subversion,版本控制工具相关外围工具也需要随之更换。版本控制器对外接口改变,原VSS代码统计工具VManager不能在Subversion中使用,因此需要针对Subversion提供的接口进行开发。
功能目标
获取指定源代码文件提交时间端内,指定作者所属的代码修改量。
获取指定作者新建、维护的源代码,新建文件存放于Create文件夹,维护代码文件分
New(修改后的源码文件)和Old(修改前的源码文件)两个文件夹存放
系统总体结构
模块划分结构图
SVN
SVN
Svn服务器
Svn数据读取模块
DBReader
数据处理统计模块
DataAnalyze
任务读写模块
TaskDefine
用户界面
存储模块
SaveResult
工作站
图3.1.1
用户数据输入,任务制定、读取模块TaskDefine
该模块重用自 VManager的TaskDefineDlg,存储和读取查询任务信息:查询用户名AuthorName,时间段、版本库路径REPOS_PATH等。
Subversion数据库连接、数据掘取模块;DBReader
该模块连接Subversion数据库,由用户界面调用,以用户界面从任务读取模块获取的查询任务信息为参数,获取对应查询用户(作者)的源代码文件信息:版本,日期,获取对应源代码文件内容等。
中间数据处理、统计模块。DataAnalyze
该模块分析处理从Subversion数据掘取模块获取的查询用户信息,进行查询结果统计:源代码文件,代码量。
文件、统计结果存储模块SaveResult
该模块重用自VManager的Display模块,存储数据处理模块的输出信息:需存储源代码内容、存放路径。(有取代码需求时存储),代码量统计结果。
用户操作界面
用户界面,用户可通过界面操作进行任务制定、执行,并监视查询任务的执行状态
数据流程说明
数据流程图
SubversionDB
SubversionDB
REPOS_PATH
REPOS_PATH
REPOS_PATH
REPOS_PATH
History
Info
Changed
Diff
_reversion
_reversion
_reversion
AllReversions
Author,Date,reversion
Reversion,FileList
Diff(_reversion,
_preReversion)
Author,Data,Reversions,FileList
Author,reversion,File,FilesContent
Authour,Date,FileInList,FileDiff
数据分析
文件比较
数据分析模块
Result,
Create,New,Old
存储
图4.1.1
流程图中灰色部分是基本流程模块,黄色部分和绿色部分为二选一模块;黄色模块使用
Subversion自带的文件比较工具进行代码修改量统计,绿色模块使用VManager代码统计工具
中的文件比较模块进行代码修改量的统计,两种方式的执行效率及精确程度需要完成后比较。
数据处理流程:
1、History从Subversion库(REPOS_PATH)获取该库的版本历史信息,将其保存为一个版本列表ReversionList:如图4.2.1所示
图4.2.1
2、Info根据版本号
文档评论(0)