阅读笔记2

实战中的软件工程

7.2 MSF九项基本原则

 ·推动信息共享与沟通

 ·为共同的远景工作

 ·充分授权和信任

 ·各司其职,对项目负责

 ·重视商业价值,提供渐进的价值

 ·保持敏捷,预期和适应变化(预期变化,不是适应变化)

 ·投资质量

 ·学习所有经验

 ·与顾客合作

7.3MSF团队模型

 ·测试团队要做的事:发现问题和解决问题

7.4MSF过程模型

 ·阶段:团队在某段时间集中精力做一件事情,团队的重心随阶段的转移而转移

 ·里程碑:上一阶段的结束,下一阶段的起始。

7.5实战中的软件工程

 ·注重与实际结合,而不是盲目跟风

 ·切忌Cargo Cult,否则最终只会导致失败

7.6联系与讨论

 软件工程原则:

 ·使用分阶段的计划管理流程,强调需求分析和抵制随意改变项目计划

 ·持续检查认证,在早期发现问题

 ·坚持规范的产品控制--验证过的程序或文档只有通过规范的流程才能修改

 ·使用现代的编程方法和工具

 ·确保团队成员能够分阶段、分模块地产生可以测试、可以复审的结果,并对结果负责

 ·用少而精的人员,减少交流成本,提高效率

 ·持续地收集数据和反馈,争取通过多个迭代实现流程的改进和整体软件质量的提高

看完这一章,我认为这本书更适合已经踏入工程领域的人阅读,我目前的阶段虽然还不太适合,但对我接下来的学习仍有重要的指导意义。在任何一个项目中,或大或小,都应该遵守那几个原则,减少代码的出错率,降低维护成本。根据课程安排,下学期我就会与人合作完成一个项目,在一个团队中,制作一个项目要有清晰的计划,项目的完成流程,最重要的是与实际结合,切忌货船效应。在项目开发过程中,必不可少的是与人打交道,学会与人交流,了解彼此的需求,对于项目的开发和后期的维护和更新会有很大的帮助。个人方面,写完一部分代码之后,必须进行测试,减少后期代码修改的成本,同样这也是一个自我检测,毕竟错误越早解决越好。

8需求分析

8.1软件需求

·获取和引导需求

·分析和定义需求

·验证需求

·在软件产品的生命周期中管理需求

软件的需求:①产品功能性需求;②对产品开发过程的需求;③非功能性需求;④综合需求

8.2软件产品的利益相关者

·从软件出发,推演出利益相关者,争取每个人的意见,虽不能让人人满意,但尽可能做到最好。

8.3获取用户需求-用户调研

·焦点小组

·深入面谈

·卡片分类

·用户调查问卷

·用户日志研究

·人类学调查

·眼动跟踪研究

·快速原型调研

·A/B测试

8.4竞争性需求分析的矿建

·NABCD模型:需求、做法、好处、竞争、推广

8.5功能的定位和优先级

·杀手功能/外围功能

·必要需求/辅助需求

8.6计划和评估

·目标、估计、决心

·找出估计后面的假设

·提高估计能力的招数

·影响软件成本的因素:产品、平台、人员、项目

8.7分而治之

·WBS产品:保证所有子节点覆盖全部父节点包含的内容;保证各个子结点不要相互覆盖;叶子节点保证足够小,能在一个里程碑中完成;从结果出发构建WBS,而不是从团队的活动出发。

看完这章之后,对于产品的需求明白更深。一个软件的完成,不仅仅来自客户的需求,还有制作者的理解,更有各户将其投入使用后所能得到的效益。客户的需求非常重要,但有时在交流的过程中,客户也不能准确表达自己的需求,所以在制作的过程中,需要不断与客户交流,降低产品的维护成本;其次是制作者的理解,我们或做过或见过考研默契的互动游戏,但是最懂结果大都不理想,软件的最终成型模样有很大一部分原因取决于制作者的理解。客户将产品投入使用之后获得的效益往往是最重要的,一个软件好不好,并不取决于客户的描述和制作者精彩的制作,而是取决于使用它的普通人,举个例子:我装杀毒软件只装一个火绒,而普通人装杀毒软件恨不得装7个加速球组成小金刚。一对比就出来了,真正的好软件需要“傻瓜”都会用。除此之外,还要考虑软件制作和维护的成本,尽可能地降低成本,是一个项目公司真正缺少的。

posted @ 2022-01-17 20:08  华茹  阅读(35)  评论(0)    收藏  举报