摘要

不知道大家都在用哪些工作辅助软件,或者有没有这方面的需求,我想做一个程序员助手的软件来帮助程序员工作,其中一部分需求和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,






用例图

随便画了一下,没有细化用例间的扩展和包含关系还。

 程序员助手需求分析_用例

问题域模型

大致画了一下,知识概念模型,不是类模型,这也是需求阶段的模型,先不细化,大家看哪儿不对,提提意见,只做了简单的关联分析和职责分析,多重性和约束也没细化。

 程序员助手需求分析_用例_02

这个项目算作wawaKM的一个子项目吧,大家有兴趣可以参与讨论和开发哦,另外wawaKM征集几名人员,详见以下链接,大家给推荐推荐哦,谢谢。