statsvn软件需求规格说明.docx

上传人:b****8 文档编号:10153282 上传时间:2023-02-08 格式:DOCX 页数:13 大小:62.15KB
下载 相关 举报
statsvn软件需求规格说明.docx_第1页
第1页 / 共13页
statsvn软件需求规格说明.docx_第2页
第2页 / 共13页
statsvn软件需求规格说明.docx_第3页
第3页 / 共13页
statsvn软件需求规格说明.docx_第4页
第4页 / 共13页
statsvn软件需求规格说明.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

statsvn软件需求规格说明.docx

《statsvn软件需求规格说明.docx》由会员分享,可在线阅读,更多相关《statsvn软件需求规格说明.docx(13页珍藏版)》请在冰豆网上搜索。

statsvn软件需求规格说明.docx

statsvn软件需求规格说明

软件需求规格说明文档

版本库统计分析工具

Version1.0

PreparedbyRepositorystat4

小组成员:

罗正武(组长)张海标郑磊叶正江武振兴梁经伙肖阳

 

2012年10月22日

目录

软件需求规格说明文档1

介绍3

目标3

项目范围和产品特性3

参考文献3

总体描述3

产品远景规划3

用户类和用户特性4

运行环境5

设计和实现的约束条件5

用户文档5

假设和依赖5

系统特性6

注册账户6

修改个人信息6

登录系统6

查看统计信息6

管理用户7

切换中英文7

创建新项目7

修改项目信息7

删除项目8

外部接口需求8

用户界面(User Interfaces,UI)8

硬件接口8

软件接口(SoftwareInterfaces,SI)8

通信接口(CommunicationsInterfaces,CI)8

其他非功能性需求9

性能需求9

可靠性需求9

安全性需求9

易用性需求9

附录数据字典和数据模型10

数据字典10

数据模型12

介绍

目标

软件需求规格说明描述了“版本库统计分析系统”1.0版本的软件功能性需求和非功能性需求。

这一文档计划由实现和验证系统正确功能的项目团队成员来使用。

除非在其它地方另有说明,这里指定的所有需求都具有高优先级,而且都要在版本1.0中加以实现。

项目范围和产品特性

“版本库统计分析系统”允许“能够从Subversion版本库中日志文件中取得数据信息并存入数据库,然后利用这些数据生成描述项目开发的各种统计表格和图表。

详细的项目描述请参见“前景与范围文档”。

文档中这一部分标题为“初始版本和后续版本的范围”,列出了按照进度计划在这一版本中实现的全部或部分特性。

参考文献

 无

总体描述

产品远景规划

“版本库统计工具”是一个统计应用程序。

能够从Subversion版本库中日志文件中取得数据信息并存入数据库,然后利用这些数据生成描述项目开发的各种统计表格和图表。

代码行数的时间线;针对每个开发者的代码行数;开发者的活跃程度;开发者最近所提交的;文件数量;平均文件大小;最大文件;哪个文件是修改最多次数的;目录大小等。

通过查看统计图表,能够形象的看到项目的进展程度。

还能够了解到每个开发人员已完成的工作量,工作时间,工作效率等。

致使经理可以了解每个人的工作情况,及时的作出相应调整和奖惩,达到提高工作效率,降低开发成本的目的。

 

“版本库统计系统”关联图

用户类和用户特性

用户类

描述

开发人员

开发人员是软件公司开发项目的负责编写程序的人员,他们希望自己在svn所作的工作得到统计,希望可以让高层领导看到自己所做的工作.他们每人都有一个用户名和密码,他们所做的工作统计到版本库统计中.开发人员同样可以查看自己活动的统计信息,和项目资料.

项目经理

每个项目一般有一个项目经理,项目经理负责创建项目,管理项目信息等工作.项目经理可以通过版本库统计系统发现真正的开发骨干,使人才得以提拔,于此同时警告或辞退工作不认真的开发人员.项目经理可以查看工作人员的工作统计信息.

运行环境

OE-1:

“版本库管理系统”的操作将通过web浏览器完成。

支持的浏览器有IE7,IE8,IE9等。

OE-2:

“版本库管理系统”将运行在一个服务器中,该服务器运行当前批准的RedHatLinux版本和ApacheHTTPServer

设计和实现的约束条件

CO-1:

系统将采用公司标准的当前SQL数据库。

CO-2:

所有HTML代码将遵照HTML4.0标准。

CO-3:

所有的脚本语言都用java语言编写

用户文档

UD-1:

系统将提供一个分层的和跨连接的html联机帮助系统,它描述并演示了所有系统功能。

Ud-2:

如果是一个新用户第一次使用该系统,系统可以根据用户的要求,提供一个联机的教程,用户可以使用静态教程查看修改各种资料,系统不会保存此类修改。

假设和依赖

AS-1:

用户使用了版本库管理工具对项目进行管理。

确保机器上运行的有SVN(或者相应的版本管理软件)的客户端。

DE-1:

该系统除了对活动和文件的统计,主要就是针对代码行的统计。

所以该系统主要针对软件开发项目进行统计。

DE-2:

该系统用数据库存放日志文件中的各项数据,因此需要用户同时安装使用相应的数据库。

DE-3:

有可以动态生成图表的工具。

用户可以随意选择时间段进行查看,那么图表就随时可能变化,而且要考虑效率。

系统特性

注册账户

修改个人信息

登录系统

查看代码行数统计图

(1)描述和优先级

用户从公司内联网上或者Internet访问”版本库统计系统”。

在登录身份得到验证之后,就可以查看工作的统计信息。

选择查看代码行数统计图,系统就会显示该项目从创建到当前时间每位人员所提交的代码行数的统计图,键入时间区可以查看该时间段的代码行数统计图;选择具体人员,还可以查看该人员的代码行数统计图。

优先级为基本。

(2)刺激、响应序列

    刺激:

用户请求查看项目列表。

    响应:

系统为用户呈现出该用户管理或者开发的项目列表。

    刺激:

用户选择要查看的项目。

    刺激:

用户选择查看代码行数统计图。

    响应:

系统为用户呈现出该项目的所有人员从项目存在到当前时刻代码的统计图。

    刺激:

用户键入想查看的时间区的代码行数统计图。

    响应:

系统为用户呈现出该时间区的代码行数的统计图表。

(3)功能性需求

 View.Logon

登录到“版本库统计系统”的用户可以通过该系统查看工作人员的工作信息和生成的统计图表。

 View.ProList

 系统允许用户查看该用户参与的所有的项目的统计图表。

 View.checkProList

如果用户请求查看项目列表,那么系统将会为用户到数据库中查询该用户参与的项目。

 View.showProList

 系统将会为用户显示出该用户参与的项目的列表。

 View.category

 如果用户请求查看其中一个类别的统计图表,那么系统将会到数据库中检索该类别的所有数据信息。

 View.generateDiagram

 系统将会根据在数据库中检索到的信息动态的代码行数统计图。

 View.showDiagram

 系统将会为用户呈现出生成的统计图表。

 View.previousPeriod

 系统允许用户查看从该项目创建到当前时间的代码行数统计图。

 View.Diagram

 系统允许用户查看指定人员在具体时间段的代码行数统计图。

 View.intputPeriod

 用户查看截止当前时间的统计图表或者键入时间区。

 View.periodDiagram

 如果用户要求查看指定时间区的代码行数统计图,而且输入的时间区是有效的,那么系统将会生成该时间区的代码行数统计图。

 View.wrongPeriod

 如果用户要求查看指定时间区的代码行数统计图,但是输入的时间区是无效的,那么系统将会提示用户输入正确的时间区。

 View.choosePerson

 用户查看所有人的代码行数统计图或者选择具体人员。

 View.personDiagram

 如果用户要求查看具体人员的代码行数统计图,而且该人员存在在所选择的项目中,那么系统将生成该人员代码行数统计图。

 View.wrongPerson

如果用户要求查看指定人员的代码行数统计图,但是选择的人员不在该项目团队中,那么系统将会提示用户选择该项目的人员。

 View.gotoCategory

 如果用户回到类别目录表,那么系统将会转到允许用户选择类别的页面。

 View.gotoPriList

 如果用户回到项目列表,那么系统将会转到项目列表的页面,以便用户查看其他项目的统计图表。

 管理用户

切换中英文

创建新项目

修改项目信息

删除项目

外部接口需求

用户界面(User Interfaces,UI)

UI-1:

“StatSVN版本库管理系统”的屏幕画面将采用ViewVC,使用ViewVC可以浏览版本库中的目录/文件、以及每个文件的历史版本记录等,同时还可以显示和下载文件等操作。

UI-2:

“StatSVN版本库管理系统”对所显示的每个HTML网页都提供帮助链接,解释如何使用这些网页。

UI-3:

Web页面的全部导航和项目条目选择,只能综合使用鼠标和键盘共同完成,不能只通过键盘来单独完成。

硬件接口

硬件接口还没有确定。

软件接口(SoftwareInterfaces,SI)

SI-1:

SVN版本库系统

SI-1.1:

“StatSVN版本库管理系统”是一个“SVN版本库系统”的静态分析工具,它能生成SVNlog日志文件的html报表。

SI-1.2:

“StatSVN版本库管理系统”的前身是“SVN版本库系统”,使用它之前要下载SVN的命令行客户端,以便能自动化完成诸如评估工作量、开发效率、趋势,帮助项目管理的任务。

SI-1.3:

当“SVN版本库系统”中的某个文件被删除时,“StatSVN版本库管理系统”中的相应文件将不能打开,并显示文件不存在。

通信接口(CommunicationsInterfaces,CI)

CI-1:

“StatSVN版本库管理系统”将向用户发送电子邮件消息,以通知用户是否要修改个人信息。

CI-2:

“StatSVN版本库管理系统”将向用户发送电子邮件消息,以通知用户有新的通知。

其他非功能性需求

性能需求

PE-1:

估计用户数为100人,每天登陆用户数为30左右,网络的带宽为100M带宽。

PE-2:

用户向系统提交信息后,系统将在3秒内向用户显示确认信息。

PE-3:

当通过公司网络接入系统的时候,期望在信息搜索时最长查询时间<15秒。

PE-4:

当用户在非高峰时间按特定条件进行搜索时可以在3秒内得到搜索结果。

可靠性需求

RE-1:

当系统出现故障和用户出现错误的操作后支持恢复。

RE-2:

 当用户在使用过程中遇到错误的时候可以立即定位问题。

RE-3:

当网络不稳定或在使用中异常中断情况下系统有相应的应对措施。

安全性需求

SE-1:

所有涉及功能信息或个人身份信息的网络事物,都应进行加密操作。

SE-2:

该系统的使用人员,只有那些授权为菜单经理的成员,才能通过系统创建或编辑菜单。

易用性需求

EA-1:

系统的UI界面易学易懂,人机交互容易,符合用户需求。

EA-2:

用户很容易找到期望进行的各种操作菜单,系统功能菜单易见,符合用户心理。

EA-3:

软件系统允许用户通过在线帮助,导航,向导等各种方式学习。

EA-4:

用户在熟练使用系统后可以更快的进行各种操作。

附录数据字典和数据模型

数据字典 

项目基本信息表=项目名称

+项目类型

+项目创建时间

+项目成员

+项目简介

+版本库地址

版本库地址=*与系统相关联的SVN或其他版本库管理系统的服务器地址*

项目简介=*对该项目150字以内的项目描述*

项目类型=[全新型项目|纯维护型项目|改造扩容型项目]

账号信息表格=职员ID号

+用户名

+性别

+出生日期

+联系电话

+职位

+住址

+密码

职员ID号*项目成员在公司中的ID号:

是由8个字符数字组成的字符串*

用户名*用户在系统中的标识,也是登录时需要输入的信息*

密码*用户在登录时所要输入的用于验证身份的信息*

项目列表*登录本系统的用户所参与的项目的列表,列名为项目名称,项目创建时间*

版本列表*系统提供该项目的版本列表,列名为版本号、创建时间、最后修改时间*

项目成员列表*参与该项目的所有成员的员工ID、用户名列表、职称*

公司人员列表*注册了本系统的所有公司人员的员工ID、用户名列表*

图表时间段*用户选择查看图表统计信息的时间区间;格式是YYYY/MM/DD-YYYY/MM/DD*

图表时间单位*用户选择查看图表的时间单位;单位为年、月、周、日*

项目代码量图*横坐标为成员,纵坐标为成员在选定的时间段内提交的代码总量*

项目活动次数柱状图*横坐标为成员,纵坐标为成员在选定的时间段内的总活跃次数*

项目代码量折线图*横坐标为时间,纵坐标为代码量,折线为项目总代码量的走势*

项目成员代码量折线图*横坐标为时间,纵坐标为代码量,每条不同颜色的折线代表不同成员的总代码量走势*

项目代码统计表*系统提供的列名为项目开发成员、累计变更次数、累计代码行数、行代码平均修改次数表*

项目成员贡献统计表*系统提供的列名为开发成员、代码量、行代码平均修改次数、活动次数、AHP综合贡献得分表*

文件代码量折线图*横坐标为时间,纵坐标为代码量,是指定文件的总代码量随时间变化的折线图*

成员代码量柱状图*横坐标为时间,纵坐标为指定的成员的代码总量*

成员代码量搅动图*横坐标为时间,纵坐标为代码量,红色折线为成员的代码量走势,蓝色折线为成员的代码修改量走势*

成员代码量折线图*横坐标为时间,纵坐标为代码量,折线表示成员代码量走势*

成员文件活动统计表*列名为文件绝对路径、累计变更次数、累计代码行数、行代码平均修改次数表*

文件目录*系统提供的项目文件目录树,用不同的图标标记文件夹的状态(是否为空),文件夹后标注文件数目、文件大小和代码总行数*

排序[文件大小|文件数目|创建日期|最后修改时间|修改次数|代码量]

文件详情*指定文件的文件目录、文件大小、含有文件数目、代码行数的信息表*

文件代码统计表*用户指定的文件的代码统计表,列名为开发人员、修改次数、代码行数和行代码平均修改次数*

日志*系统从数据库中读取的活动日志,内容有作者、活动时间、版本号、注释、文件路径、代码量、差别*

语言列表中文英文

图表                   =图表名称

                       +图表类型Id

                       +图表类型

    图表名称=*【LinesOf Code】【Developers】【RepositoryTags】【Directory】*

    图表类型=*【饼状图】【柱状图】【折线图】【散点图】【成员列表图】【项目列表图】*

 日志                  =日志Id

                       +日志名称

                       +日志大小

数据模型

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1