- 浏览: 506249 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
wang1352083:
正在搭建tomcat源码.一会儿参照楼主经验搭建spring源 ...
Eclipse中阅读开源项目代码 -
w123456789zzzz:
谢谢你,问题解决了,楼主万岁!!
eclipse中如何安装插件 -
xiaoLee:
...
软件性能测试论文草稿 -
铃儿响叮当:
...
使用firefox调试js -
gogopengyou:
很细心啊
eclipse中如何安装插件
不管是干技术还是干销售、管理的,熟练的掌握一些常用问题的撰写是一项基本能力。
我将在博客中将自己工作中遇到的一系列文档书写样式记录下来,有预研文档、需求文档、设计文档、工作报告文档等,虽然不够规范但够用。
————————————转正报告之需准备的素材——————————————
主题一: 自我简介
主题二: 主要工作成果展示
最后来一个简短的总结
主题三: 学习与能力提升情况
个人打算从实习阶段与试用阶段两个阶段分别展开阐述
(内容主要是参考工作笔记与日记)
从开发工具、 试用技术、 思想经验、 团队协作等维度进行阐述
最后进行一个简短的总结
主题四:优势与不足
分别阐述与优势
可以结合转正评审考核指标进行阐述(含核心能力:激情、责任感、创新、团队协作、客户导向思维、学习能力; 专业技能:基础知识/技能、专业知识/技能;工作效率)
结合自身实际情况进行阐述
最后来一个简短的总结
主题五: 未来工作展望及需要的帮助
结合行业热点新闻与个人实际情况 进行阐述
帮助也从自身角度进行阐述
主题六: 心得体会及建议
结合自己积累的项目管理、软件工程与团队协作等进行阐述
——————————————需求分析八股文(转载)————————————————
我们先看看下面一个在生活中谣言是如何产生的笑话:
A对B说:“听说老王家的鸡刚生出的蛋落地便破壳,马上变出了小鸡。”
B告诉C:“新鲜事,老王家的鸡生出的蛋,壳还没破,就变成了小鸡。”
C又对D说:“真怪,老王家的鸡直接生出了小鸡!”
D又对E说,E告诉了F,F告诉了G。
恰好G巧遇A,告诉A:奇迹,老王家的鸡竟然生出一只小乌龟!
这里涉及到2类传播,一是人,就是常说的沟通,另外是事情,就是要实现的需求,在项目上可以理解为需求在变形,客户说要做个刚出生的小鸡,然后项目组很辛苦也很努力的去做,最后很兴奋的给客户说,我们做了一个很漂亮的小乌龟,考虑到扩展性,我们还安了一对翅膀,你觉得是不是很满意吗?这些绝对能满足现在和将来的需求。真实情况是这样吗?很显然,传播的人越多,沟通渠道越复杂,传播的事情越失真。
需求实现的渠道也许象这样:客户->项目经理->需求分析员->设计师->程序员->测试->客户的循环。那么在公司里面最经常见到的场景就是
客户大骂项目经理:“这不是我要的”
项目经理对程序员说:“你想的太多了”
项目经理对老板说:“我们很努力了,客户需求老变,我们有什么办法”
“哎,这周白做了,又返工”
......。
有很多理论一直在希望能够改善需求分析环节处理,就是因为需求分析太重要了,它是所有后续工作的起点。俗话说,男人怕入错行,女人怕嫁错男。源头错了,后面做的再好也白搭,等着被人骂。
这些年我在写需求分析成果需求规格说明书的历程,有六个阶段:
第一阶段:2页搞定法,写一句目标,写几句背景、画一个功能结构图、每个功能写几句。大家能不能想到这种方法象什么,呵呵,就象在写简单的宣传材料,在结果出来前谁也都不知道象什么,大家都在猜,这些功能字眼很熟悉,至于怎么做,编码的人自己去想。这就是我早期做的事情,编码的时候这份文档唯一的作用就是做菜单。结果等软件出来,很神奇的,客户气死,老板气死、销售气死。
第二阶段:总不能一直是用2页搞定客户吧,报告需要页数的,拿这点页数上不了台面的,只能凑字数,怎么办,就从技术的角度去做,画数据流图,写输入输出。写着写着就好像写成设计报告了,客户懵了,老板懵了,销售懵了,看不懂,程序员懂了。但从技术角度思考,我们做出来的东西就是客户想要的吗,因为前期很难和客户确认。结果等软件出来,也是很神奇的。
第三阶段:从技术角度不能解决需求问题,那就抛开技术,从客户角度去写,把客户所做的业务完整描述出来,这下客户懂了,老板懂了,销售懂了,程序员懂了,可是做的时候遇到一个很大问题,描述中涉及到的业务是不是都需要实现,完整性描述意味着文档中有可能覆盖了很多不需要做到系统里面的业务点。这个怎么界定,开始没定好,那我们在实现的时候就会做了很多很多很有意思的功能,套用一句话:你知道的太多了。所以想的越多,事情做的越多,工期拖的越久。结果等软件出来,也是很神奇的。
第四阶段:前三个阶段都有问题啊,写出来的内容对设计和开发指导意义不大,我们想到了原型法,原型法效果是不错,但有个问题,原型法很耗时间,对能力要求很高,要快速出代码。因此这种方法只用在对非功能性要求有特殊的情况下,如性能,新技术、复杂的场景中。如果简单的增删改查功能也用原型法是不是太奢侈了点,除非客户有硬性要求。
第五阶段:这不行,那不行,这时候有个前辈忽然想到,发布给客户除了安装包以外,还有用户操作手册,我们能不能把用户操作操作手册提前到需求分析阶段,手册中涉及的界面用VISIO画出来,人机对话的过程用文字写出来。这个建议真的很厉害,当我们按用户操作手册方式写需求规格说明书,效果很快就出来了。从编写需求开始,就定下来一个重要的关键字,那就是边界。我们要做的系统最终发布给客户是什么样子,怎么操作,非常的明确,设计按它来做、编码不要在花太多的时间考虑界面,只要考虑已经定义好的样子、测试按说明书一步一步来验证。朋友,在整个开发过程没有返工啊,除非需求发生变更。所以我很佩服这个前辈,思路决定出路。这种方式很容易和客户、设计、程序员等等角色沟通确认,因为大家是看图说话。就是有点不好的就是文档太专业,太枯燥,没有优美的文字可以给客户领导、老板、销售。因为这些角色又不看具体的功能内容。
第六阶段:终于大成,是我这几年一直使用的方法,也是我当时所在团队的集体最高成就:三分定天下。既然需求规则说明书要包含非常优美的文字给领导看,又要有功能列表给销售看,还要有已定义的无歧义内容给设计、程序员、测试看。那么三分定天下方法就把需求规格说明书一分为三,拆成三份文档
1、总论。包含背景分析、业务描述、功能需求、非功能性需求、接口需求等内容,这些常常被拿去做宣传、立项、忽悠等等用途。属于编故事范畴,写的越优美越好。
2、功能列表。系统要实现的功能点,你可以理解为USE CASE,是做定义边界的。我经常用它做进度估算、成本估算和报价用,也是后续工作的控制点。
3、分册。与功能列表中的功能点一一对应,使用用户操作手册的方法做,严格要求这里描述的内容都是属于边界内的。不能有等等这类的字眼,要有图,有操作步骤,有操作规则,在和客户确认后到没发生变更前,是要没有任何歧义的。大家遵守这个手册来做事情。那么做出来的东西就是没有返工的,满足客户当前确认的需求。
写了这么多,其实我给大家分享的就是需求规则说明书的三分定天下方法,在第六阶段。至于需求怎么采集这个要看个人,八仙过海,各显神通,能给大家建议的只有一点,在和客户做需求调研的时候,请花点时间通过其它途径先了解客户的业务,不然在沟通过程中很尴尬,客户会认为你水平不够,不愿和你沟通。
——————建议————————————————————
在这种环境下,我们所要做的就是要把工作量给体现出来,建议是:
1、使用需求跟踪表,把每个修改的内容记录下来,什么时间、什么需求、什么人提的,什么时候实现了。这个是给老板和销售看的,说明你在很努力的干活,如果不记下来并且及时汇报,时间一长,谁也不知道你做了什么,只知道你还没有做完,另外在表中有工作量的需求,最好事先和销售通个气,让销售评估是否收维护费用
2、借用版本管理一些概念,就是在需求跟踪表里面你大概估个量,量够就结一个版本,这样就有了里程碑,做汇报的时候至少别人都知道这段时间你做了几个版本,解决了客户多少需求。花了多少工作量。
通过这2种方式,你就不会在乎客户的需求怎么变,你把每次修改都当做新需求,及时和老板、销售沟通,把工作量报给他们,让他们考虑维护费用,这样你的压力就会减很多,做的比较舒服些。
我将在博客中将自己工作中遇到的一系列文档书写样式记录下来,有预研文档、需求文档、设计文档、工作报告文档等,虽然不够规范但够用。
————————————转正报告之需准备的素材——————————————
主题一: 自我简介
主题二: 主要工作成果展示
最后来一个简短的总结
主题三: 学习与能力提升情况
个人打算从实习阶段与试用阶段两个阶段分别展开阐述
(内容主要是参考工作笔记与日记)
从开发工具、 试用技术、 思想经验、 团队协作等维度进行阐述
最后进行一个简短的总结
主题四:优势与不足
分别阐述与优势
可以结合转正评审考核指标进行阐述(含核心能力:激情、责任感、创新、团队协作、客户导向思维、学习能力; 专业技能:基础知识/技能、专业知识/技能;工作效率)
结合自身实际情况进行阐述
最后来一个简短的总结
主题五: 未来工作展望及需要的帮助
结合行业热点新闻与个人实际情况 进行阐述
帮助也从自身角度进行阐述
主题六: 心得体会及建议
结合自己积累的项目管理、软件工程与团队协作等进行阐述
——————————————需求分析八股文(转载)————————————————
我们先看看下面一个在生活中谣言是如何产生的笑话:
A对B说:“听说老王家的鸡刚生出的蛋落地便破壳,马上变出了小鸡。”
B告诉C:“新鲜事,老王家的鸡生出的蛋,壳还没破,就变成了小鸡。”
C又对D说:“真怪,老王家的鸡直接生出了小鸡!”
D又对E说,E告诉了F,F告诉了G。
恰好G巧遇A,告诉A:奇迹,老王家的鸡竟然生出一只小乌龟!
这里涉及到2类传播,一是人,就是常说的沟通,另外是事情,就是要实现的需求,在项目上可以理解为需求在变形,客户说要做个刚出生的小鸡,然后项目组很辛苦也很努力的去做,最后很兴奋的给客户说,我们做了一个很漂亮的小乌龟,考虑到扩展性,我们还安了一对翅膀,你觉得是不是很满意吗?这些绝对能满足现在和将来的需求。真实情况是这样吗?很显然,传播的人越多,沟通渠道越复杂,传播的事情越失真。
需求实现的渠道也许象这样:客户->项目经理->需求分析员->设计师->程序员->测试->客户的循环。那么在公司里面最经常见到的场景就是
客户大骂项目经理:“这不是我要的”
项目经理对程序员说:“你想的太多了”
项目经理对老板说:“我们很努力了,客户需求老变,我们有什么办法”
“哎,这周白做了,又返工”
......。
有很多理论一直在希望能够改善需求分析环节处理,就是因为需求分析太重要了,它是所有后续工作的起点。俗话说,男人怕入错行,女人怕嫁错男。源头错了,后面做的再好也白搭,等着被人骂。
这些年我在写需求分析成果需求规格说明书的历程,有六个阶段:
第一阶段:2页搞定法,写一句目标,写几句背景、画一个功能结构图、每个功能写几句。大家能不能想到这种方法象什么,呵呵,就象在写简单的宣传材料,在结果出来前谁也都不知道象什么,大家都在猜,这些功能字眼很熟悉,至于怎么做,编码的人自己去想。这就是我早期做的事情,编码的时候这份文档唯一的作用就是做菜单。结果等软件出来,很神奇的,客户气死,老板气死、销售气死。
第二阶段:总不能一直是用2页搞定客户吧,报告需要页数的,拿这点页数上不了台面的,只能凑字数,怎么办,就从技术的角度去做,画数据流图,写输入输出。写着写着就好像写成设计报告了,客户懵了,老板懵了,销售懵了,看不懂,程序员懂了。但从技术角度思考,我们做出来的东西就是客户想要的吗,因为前期很难和客户确认。结果等软件出来,也是很神奇的。
第三阶段:从技术角度不能解决需求问题,那就抛开技术,从客户角度去写,把客户所做的业务完整描述出来,这下客户懂了,老板懂了,销售懂了,程序员懂了,可是做的时候遇到一个很大问题,描述中涉及到的业务是不是都需要实现,完整性描述意味着文档中有可能覆盖了很多不需要做到系统里面的业务点。这个怎么界定,开始没定好,那我们在实现的时候就会做了很多很多很有意思的功能,套用一句话:你知道的太多了。所以想的越多,事情做的越多,工期拖的越久。结果等软件出来,也是很神奇的。
第四阶段:前三个阶段都有问题啊,写出来的内容对设计和开发指导意义不大,我们想到了原型法,原型法效果是不错,但有个问题,原型法很耗时间,对能力要求很高,要快速出代码。因此这种方法只用在对非功能性要求有特殊的情况下,如性能,新技术、复杂的场景中。如果简单的增删改查功能也用原型法是不是太奢侈了点,除非客户有硬性要求。
第五阶段:这不行,那不行,这时候有个前辈忽然想到,发布给客户除了安装包以外,还有用户操作手册,我们能不能把用户操作操作手册提前到需求分析阶段,手册中涉及的界面用VISIO画出来,人机对话的过程用文字写出来。这个建议真的很厉害,当我们按用户操作手册方式写需求规格说明书,效果很快就出来了。从编写需求开始,就定下来一个重要的关键字,那就是边界。我们要做的系统最终发布给客户是什么样子,怎么操作,非常的明确,设计按它来做、编码不要在花太多的时间考虑界面,只要考虑已经定义好的样子、测试按说明书一步一步来验证。朋友,在整个开发过程没有返工啊,除非需求发生变更。所以我很佩服这个前辈,思路决定出路。这种方式很容易和客户、设计、程序员等等角色沟通确认,因为大家是看图说话。就是有点不好的就是文档太专业,太枯燥,没有优美的文字可以给客户领导、老板、销售。因为这些角色又不看具体的功能内容。
第六阶段:终于大成,是我这几年一直使用的方法,也是我当时所在团队的集体最高成就:三分定天下。既然需求规则说明书要包含非常优美的文字给领导看,又要有功能列表给销售看,还要有已定义的无歧义内容给设计、程序员、测试看。那么三分定天下方法就把需求规格说明书一分为三,拆成三份文档
1、总论。包含背景分析、业务描述、功能需求、非功能性需求、接口需求等内容,这些常常被拿去做宣传、立项、忽悠等等用途。属于编故事范畴,写的越优美越好。
2、功能列表。系统要实现的功能点,你可以理解为USE CASE,是做定义边界的。我经常用它做进度估算、成本估算和报价用,也是后续工作的控制点。
3、分册。与功能列表中的功能点一一对应,使用用户操作手册的方法做,严格要求这里描述的内容都是属于边界内的。不能有等等这类的字眼,要有图,有操作步骤,有操作规则,在和客户确认后到没发生变更前,是要没有任何歧义的。大家遵守这个手册来做事情。那么做出来的东西就是没有返工的,满足客户当前确认的需求。
写了这么多,其实我给大家分享的就是需求规则说明书的三分定天下方法,在第六阶段。至于需求怎么采集这个要看个人,八仙过海,各显神通,能给大家建议的只有一点,在和客户做需求调研的时候,请花点时间通过其它途径先了解客户的业务,不然在沟通过程中很尴尬,客户会认为你水平不够,不愿和你沟通。
——————建议————————————————————
在这种环境下,我们所要做的就是要把工作量给体现出来,建议是:
1、使用需求跟踪表,把每个修改的内容记录下来,什么时间、什么需求、什么人提的,什么时候实现了。这个是给老板和销售看的,说明你在很努力的干活,如果不记下来并且及时汇报,时间一长,谁也不知道你做了什么,只知道你还没有做完,另外在表中有工作量的需求,最好事先和销售通个气,让销售评估是否收维护费用
2、借用版本管理一些概念,就是在需求跟踪表里面你大概估个量,量够就结一个版本,这样就有了里程碑,做汇报的时候至少别人都知道这段时间你做了几个版本,解决了客户多少需求。花了多少工作量。
通过这2种方式,你就不会在乎客户的需求怎么变,你把每次修改都当做新需求,及时和老板、销售沟通,把工作量报给他们,让他们考虑维护费用,这样你的压力就会减很多,做的比较舒服些。
发表评论
-
性能问题
2013-09-04 20:13 0<SERVICE CLASS=" ... -
ant中使用svn检出代码
2011-05-14 21:33 2946[size=large][size=large][size=l ... -
Ant与批处理(win环境)学习3
2011-04-10 23:48 1206此篇主要讲实践,大多数情况下是直接贴的代码了 ... -
VNC之代理
2011-03-27 22:48 2765[size=large] 背景:使用VNC客户端去连接DC上 ... -
1号~15号工作日志
2011-01-16 22:23 8801、 Flex的includeInLayout属 ... -
JAVA异常处理
2011-01-11 22:51 688在je上看到一篇有关异常处理的文章,觉得还不错... . ... -
Java配置项
2011-01-11 20:44 892背景:项目中有许多可选参数,这时如果采取硬编码的方式将非 ... -
offLineMap2工作日记之getBoolean
2011-01-06 23:25 7871、如字段不是get**开头的boolean 如: boole ... -
开发常用小工具集
2011-01-06 22:26 2005毕业也有半年了,我有幸能加入一家知名IT公司并从事时下最 ... -
Eclipse中阅读开源项目代码
2010-12-25 22:57 2709[size=large] 背景:由于最近较为系统地学习了 ... -
Eclipse调试深入
2010-12-25 18:59 1312背景:我个人的调 ... -
Java打包总结
2010-12-19 22:35 1402背景:最近下载了一 ... -
Ant与批处理(win环境)学习笔记(2)
2010-12-19 22:01 1218在《Ant与批处理(win环境)学习笔记》中学习了Ant的一些 ... -
Ant与批处理(win环境)学习笔记
2010-12-19 10:27 1438背景:最近个人附 ... -
JDK工具学习
2010-12-18 22:14 1024[size=large] 起因:在 ... -
Eclipse插件安装总结
2010-12-18 12:29 1196大学时一直使用的 ... -
使用Ant和Maven构建时出现OOM异常
2010-12-14 23:14 1753今日更新测试环境时报OOM错误(工程中使用了Ant和Ma ... -
JAVA技术见识集
2010-12-12 09:34 861[size=large] 将网上看到的一些适用于指定场景的 ... -
Eclipse异常集
2010-12-08 19:52 22781、 Eclipse异常说An internal Error ... -
将批处理文件注册成服务
2010-11-15 19:49 3529前两天完成了将java程序注册成win服务,如今本人有一 ...
相关推荐
在现代办公环境中,撰写高质量、格式统一的报告文档是许多行业中的必备技能之一。然而,手动调整文档格式往往耗时且容易出错。因此,开发一种能够自动化处理文档排版的工具显得尤为重要。本篇文章将详细介绍报告文档...
一份好的文档能降低理解成本,提高工作效率,避免误解和返工。因此,对于开发者、项目经理、测试人员甚至用户来说,理解和掌握软件文档写作都是非常必要的。 在学习这个课程时,可以通过以下几个步骤来提升文档写作...
在软件开发过程中,文档起着至关重要的作用,它不仅是...总之,《软件工程文档写作》课程旨在培养学生的文档撰写能力,通过撰写课程报告,学生能更好地理解软件工程实践中文档的作用,提高其在实际项目中的应用水平。
- 测试文档:包括测试计划、用例、报告等,确保软件质量。 - 用户手册:向最终用户提供操作指南和问题解决方案。 - 开发日志和变更控制:记录开发过程中的修改,便于版本管理和追溯。 2. **文档写作规范**: - ...
本资源集合了西北工业大学软件学院的软件文档写作作业,旨在提供一个全面的学习和参考平台,帮助学生和从业者提升文档撰写能力。 软件文档写作作业主要涵盖了以下几个方面: 1. **需求分析文档**:这是软件开发的...
《软件文档写作材料(1)》是一份针对软件开发过程中的文档编写的重要参考资料,它包含了按照国家标准(GB/T)制定的各个阶段报告的写作指南。这份文档的目的在于帮助开发者、项目经理以及技术作家们规范地撰写各类...
《实用软件文档写作》是一门深入探讨如何撰写高效、清晰且具有专业性的软件文档的课程。这门课程旨在帮助IT从业者提升文档...因此,《实用软件文档写作》是一门对于任何参与软件开发工作的人来说都非常有价值的课程。
首先,软件文档写作的核心目标是提高沟通效率,确保团队成员、管理者、用户和其他利益相关者能够理解软件项目的目标、功能、工作原理以及使用方法。良好的文档能降低误解,减少错误,提高开发质量和效率。 1. **...
在IT行业中,文档写作是至关重要的,它涵盖了项目规划、需求分析、设计、开发、测试以及维护等各个阶段。文档不仅是团队沟通的桥梁,...在实际工作中,我们应重视文档的撰写和管理,使之成为推动项目成功的重要驱动力。
在软件开发过程中,文档起着至关重要的作用,它不仅是团队...在实际工作中,应根据项目特点和团队习惯,灵活调整和定制文档内容。"软件开发文档写作示例"提供的是一套标准模板,开发者可以根据实际情况进行参考和借鉴。
在实际工作中,可以借鉴《软件文档写作标准》提供的模板和指导,结合项目特点进行定制,确保软件文档的有效性和实用性。这将极大地促进项目团队的协作效率,降低沟通成本,提高软件开发的整体质量和成功率。因此,...
软件文档写作实训课程设计旨在培养学生的文档编写能力,确保他们能够清晰、准确地传达技术信息。这个资料包“软件文档写作实训课程设计(参考资料)”提供了丰富的资源,对于进行期末课程设计或毕业设计的学生来说,...
仅以此文记录我大三下《工程文档写作》大作业内容,仅供参考交流学习。 《工程文档写作》选修课期末大作业任务书 一、总体目标 软件盛行的时代,用户的需求复杂多变,为了满足用户的需求,各种各样的软件数量日益...
在软件开发过程中,软件文档写作是一项至关重要的工作,它不仅有助于团队间的沟通,还确保了项目的顺利进行和软件质量的保证。"软件文档写作时讯报告汇编"着重强调了软件文档的重要性和编写规范,这在辽宁工业大学的...
以下是对"软件文档写作全套模板"中涉及的各种文档进行的详细说明: 1. **操作手册**:操作手册是用户与软件交互的指南,详尽地解释了如何使用软件的各项功能,包括安装步骤、基本操作、常见问题解答等,旨在帮助...
《某工业大学软件文档写作实训报告分析》 在软件开发中,文档写作是不可或缺的一部分,它不仅记录了项目的发展历程,也提供了系统设计、实现和维护的重要依据。本实训报告主要针对“学生管理系统”这一软件项目,...
《软件文档写作实训总结报告——以车队管理系统为例》 软件文档是软件开发过程中的重要组成部分,它不仅是项目管理和团队协作的桥梁,也是软件质量保证的关键因素。本实训报告旨在通过车队管理系统的实例,深入理解...
它们可能涵盖了从文档结构到特定文档类型的详细内容,比如如何撰写需求文档,如何构建系统架构图等。 7. **文件命名规范**:在“计算机文档”这个压缩包中,虽然具体文件名未给出,但通常好的文件命名应反映文件...
软件工程写作文档模板是按照标准规范制定的一套指导性文件,用于确保开发过程的系统性、规范性和可追溯性。本套模板采用.dot格式,这是一种由Microsoft Word创建的模板文件,用户需要将其转换为更通用的.doc格式以便...