程序员助手需求分析
摘要
不知道大家都在用哪些工作辅助软件,或者有没有这方面的需求,我想做一个程序员助手的软件来帮助程序员工作,其中一部分需求和WawaKM的需求有所重叠。
业务需求:
1、提高程序员的工作效率,帮助程序员更快找到问题的解决方案,更合理安排自己的学习和工作。
2、让程序员看到自己的成长和收获,从而达到自我激励的目的。
3、让程序员懂得需求工程和缺陷管理相关理论和方法,用这个工具加以实践,从而规范流程,提高项目成功率和质量。
需求提出:
[蛙蛙]c#(415492354) 21:46:46
想做一个程序员助手的工具,
[蛙蛙]c#(415492354) 21:47:06
包括需求管理,BUG管理,日志记录和收集功能
[蛙蛙]c#(415492354) 21:47:19
先做个单机版
[蛙蛙]c#(415492354) 21:48:49
需求管理:比如一个新项目,把需求捕获过程中的特征列表feturelist录入到系统中,然后添加用例,把每个特征合并到用例里
[蛙蛙]c#(415492354) 21:49:31
给每个特征编号,并设置优先级,用例也是,最后还有个属性是是否完成,然后可以导出成HTML报表
[蛙蛙]c#(415492354) 21:50:33
这样可以有效的管理需求,看那些用例和哪些特征没有完成,如果做的好还可以生成用例图,对了,用例部分还可以录入执行者和写用例描述的输入框。
[蛙蛙]c#(415492354) 21:52:01
完了就是正式开发过程中,如果有BUG可以用这个软件的BUG管理功能,收到用户反馈的BUG,或者自己找到的,录入进去,设置优先级,标题,重现步骤,严重程度,所属模块,然后修改完后把BUG的状态fixed
[蛙蛙]c#(415492354) 21:52:34
这个主要是为了加强软件的质量,可以随时统计哪个模块上还有多少OPEN的BUG
[蛙蛙]c#(415492354) 21:53:16
便于自己掌握开发进度,我这个软件只解决需求管理和BUG管理的部分,设计部分不管,自己用建模工具画图就行,文档和代码可以自己用源码工具来管理
[蛙蛙]c#(415492354) 21:54:09
然后就是每天的工作日志,记录每天做哪些事情,在每件事情上花费了多长时间,详细做了什么,还许多长时间,完了了百分之多少,有什么问题
[蛙蛙]c#(415492354) 21:54:24
每天记录这些,便于以后每月每周统计自己做的工作,知道自己干了些什么,不至于每天糊里糊涂的过
[蛙蛙]c#(415492354) 21:55:32
最后就是随笔功能,把每天工作中解决的问题记录下来,还有网上看过的文章的网址贴进来,我用lucene给做个索引以后查着也方便,这样能看到自己的收获,利于士气提高。
[蛙蛙]c#(415492354) 21:56:24
可能有些人并不喜欢这样的工作流程,可是要是有一套很好的工具配合有效的方法论就可以大大提高工作效率,而且能看到自己的提高,
[蛙蛙]c#(415492354) 21:57:01
好,大概说这么多吧,楼下的继续,我去画个mind图和用例图去
特征列表
先把我所想到的功能特征罗列了一下,大家谁有哪方面的补充或者需求回帖说一下哦,我考虑考虑。
编号 |
执行者 |
描述 |
优先级 |
FEAT01 |
程序员 |
添加项目,划分模块 |
1 |
FEAT02 |
程序员 |
添加BUG |
1 |
FEAT03 |
程序员 |
解决BUG |
1 |
FEAT04 |
程序员 |
统计某个项目我还有多少个OPEN的BUG |
2 |
FEAT05 |
程序员 |
更改BUG状态,或者修改BUG的描述和注释 |
1 |
FEAT06 |
程序员 |
添加用需求特征 |
1 |
FEAT07 |
程序员 |
添加用例 |
1 |
FEAT08 |
程序员 |
把添加的需求特征合并到用例里 |
1 |
FEAT09 |
程序员 |
把需求导出成html报表 |
2 |
FEAT10 |
程序员 |
细化用例描述 |
2 |
FEAT11 |
程序员 |
根据某个关键字搜索相关知识 |
5 |
FEAT12 |
程序员 |
记录今天做了哪些事情,完成度及剩余时间等 |
4 |
FEAT13 |
程序员 |
记录朋友生日,电话号码,某个邮箱密码 |
4 |
FEAT14 |
程序员 |
记录今天上班计划要做哪些事情 |
4 |
FEAT15 |
程序员 |
记录今天开会的会议记录 |
4 |
FEAT16 |
程序员 |
查询某个联系人的电话或者邮件 |
4 |
FEAT17 |
程序员 |
把网上的一篇文章收集到本地 |
3 |
FEAT18 |
程序员 |
看到一篇文章,没时间看,先把链接记录下来,以后再看 |
3 |
FEAT19 |
程序员 |
我自己添加随笔的时候,要求有个好用点的编辑器,可以设置字体,前景色,背景色,格式等,并可以插入图片 |
5 |
FEAT20 |
程序员 |
随笔和网上收集的文章要支持分类和加标签功能 |
5 |
FEAT21 |
程序员 |
网上收集下来的文章我可以加标记,有红色、蓝色,黄色、橙色等 |
5 |
FEAT22 |
程序员 |
网上收集的帖子可以加入我的注释 |
5 |
FEAT23 |
程序员 |
我写一篇备忘录或随笔的时候可以加一个附件 |
5 |
FEAT24 |
程序员 |
我可以统计某个项目完成了百分之多少的用例和特征 |
1 |
FEAT25 |
程序员 |
我可以对我的随笔和收集俺标签、关键字进行全文搜索,要支持中文分词 |
5 |
FEAT26 |
程序员 |
这个工具最好不要占用太大内存,因为我的机器内存才 |
3 |
FEAT27 |
程序员 |
最好可以和IE和FF集成一下,我收集文章和链接就省事了 |
5 |
FEAT28 |
程序员 |
收集功能支持剪贴板,无论我在浏览器还是word里,我选中点文字,一按ctrl+C,立马屏幕上弹出一个菜单,可以让我选择插入到随笔里 |
5 |
FEAT29 |
程序员 |
我收集网上的文章不要整个网页,只要整个网页有用的那部分,而且我要求图片也要收集到本地,否则网上的图片没了,我这篇文章看起来就不太全了 |
3 |
FEAT30 |
程序员 |
我要把vs.net快捷键,http状态码解释,公司内部名词缩写列表,log4net配置说明等文字放到一个参考的目录下,方便我随时看 |
3 |
FEAT31 |
程序员 |
我工作负责的模块的BUG列表要支持导出让别人看 |
2 |
FEAT32 |
程序员 |
我要求这个工具易用性好一些,让它真的能帮助我的工作,而不是让我工作变得更糟。 |
3 |
FEAT33 |
程序员 |
所有我的数据最好支持备份,健壮性要好一些,别一死机我的东西全没了 |
3 |
FEAT34 |
程序员 |
统计出没有归到用例和非功能需求里的特征 |
1 |
FEAT35 |
程序员 |
这个软件有网络版就好了,可以多人提交bug和管理需求 |
5 |
FEAT36 |
程序员 |
有时候我不想写随笔了,直接按一个快捷键我用话筒把我今天做的事情说一遍就可以记录到硬盘上,程序会自动以日期生成录音文件名,方便我以后收听 |
5 |
FEAT37 |
程序员 |
我写随笔的时候最好提供一个快捷键来抓取当前屏幕,并插入到我的当前随笔中 |
5 |
FEAT38 |
程序员 |
我有新的邮件来了,或者新的RSS订阅来了,要给我弹出个提示 |
6 |
FEAT39 |
程序员 |
|
|
FEAT40 |
程序员 |
|
|
合并用例
这合并的用例粒度有些大,毕竟是需求部分的用例,先粗枝大叶写一个,用例描述也没细化,一个用例是一系列用例实例的组合,有的用例覆盖的特征不太准确,完了我再慢慢整理。
编号 |
执行者 |
名称 |
描述 |
覆盖特征 |
优先级 |
UC01 |
程序员 |
添加需求特征 |
|
FEAT06 |
|
UC02 |
程序员 |
添加用例 |
|
FEAT07,FEAT08,FEAT10 |
|
UC03 |
程序员 |
添加BUG |
|
FEAT02 |
|
UC04 |
程序员 |
编辑BUG |
|
FEAT03,FEAT05 |
|
UC05 |
程序员 |
统计BUG |
|
FEAT04 |
|
UC06 |
程序员 |
统计需求情况 |
|
FEAT24,FEAT34 |
|
UC07 |
程序员 |
收集知识 |
|
FEAT17,FEAT18,FEAT20,FEAT21,FEAT22,FEAT27,FEAT28,FEAT29 |
|
UC08 |
程序员 |
写随笔 |
|
FEAT13,FEAT15,FEAT19,FEAT20,FEAT23,FEAT30,FEAT36,FEAT37 |
|
UC09 |
程序员 |
搜索知识 |
|
FEAT11,FEAT16,FEAT25 |
|
UC10 |
程序员 |
生成需求报表 |
|
FEAT09 |
|
UC11 |
程序员 |
生成BUG报表 |
|
FEAT31 |
|
UC12 |
程序员 |
编辑随笔 |
|
|
|
UC13 |
程序员 |
管理项目和模块 |
|
FEAT01 |
|
UC14 |
程序员 |
管理日志 |
|
FEAT12,FEAT14 |
|
UC15 |
程序员 |
备份数据 |
|
FEAT33 |
|
UC16 |
程序员 |
|
|
|
|
UC17 |
程序员 |
|
|
|
|
UC18 |
程序员 |
|
|
|
|
UC19 |
程序员 |
|
|
|
|
UC20 |
程序员 |
|
|
|
|
UC21 |
程序员 |
|
|
|
|
UC22 |
程序员 |
|
|
|
|
UC23 |
程序员 |
其它需求 |
|
FEAT38,FEAT35 |
|
UC24 |
程序员 |
非功能需求 |
|
FEAT26,FEAT32,FEAT33, |
|
用例图
随便画了一下,没有细化用例间的扩展和包含关系还。
问题域模型
大致画了一下,知识概念模型,不是类模型,这也是需求阶段的模型,先不细化,大家看哪儿不对,提提意见,只做了简单的关联分析和职责分析,多重性和约束也没细化。
这个项目算作wawaKM的一个子项目吧,大家有兴趣可以参与讨论和开发哦,另外wawaKM征集几名人员,详见以下链接,大家给推荐推荐哦,谢谢。
http://www.cnblogs.com/onlytiancai/archive/2007/05/29/764458.html