这段时间自己阅读了构建之法的第7-12章,现将感觉对自己帮助比较大的地方整理如下:
第一处是关于如何找到需求。我觉得这个对自己是很有帮助的,我们这次让开发团队项目,可是自己并不知道如何做起,怎么去寻找用户需求。用户会提各种各样的问题,可是怎么能够把这些问题快速梳理,做出一个较为准确的需求,我觉得这是一个难点。但是读了第八章以后,我学会了一些方法,根据自己的理解,我分析概括如下:
- 获取和引导需求
首先需要找到软件的利益相关者,了解和挖掘他们对软件的需求。很多时候用户并不知道自己确切的需求,或者不愿意表达完整的需求,软件团队需要设身处地,替用户着想,引导出需求。软件团队还可以分析技术的发展趋势以及产业的变化、社会发展的大趋势,推测用户会产生哪些新的需求。
2.分析和定义需求
将需求量化,具体分析出需求实现的最后期限、实现需求大致所需的时间和资源成本,各个不同需求的优先级,需求带来的收益,等等
3.验证需求
在分析出需求后还需要及时跟用户沟通,通过分析报告、技术原型、用户调查或演示等形式向他们验证我们对于这些需求的认知是否正确。
4. 在软件产品的生命周期中管理需求
不断管理更新需求,对其进行不断审核和调整。
第二处是第10章提的规格说明书,包括两种,软件功能说明书,软件技术说明书。
功能说明书主要用来说明软件的外部功能和用户的 交互情况。它从用户的角度描述软件产品的功能、输入、输出、界面、异常情况等,不涉及软件内部的实现细节。
相关概念,一些假设,边界条件等等这些东西一定要明明白白地写出来,这就是一种规范,只有把这些自己都能书写清楚了,让用户能看明白了,那你的软件就成功了一半,也进一步验证了你的逻辑思路是清晰的。
技术说明书主要用来说明软件内部的设计规范。它用于描述开发者如何去实现某一功能,或相互联系的一组功能。软件的设计总会遵循一些规律,而设计文档说明书就是用来说明我们的设计原则理念思路的。
我们经常不注意或者不耐烦这些说明书的编写,但是这是一种规范,用户是不会去看你的代码的,可你能给用户呈现的除了软件本身就是这些说明书,把该交代的内容交代清楚,既方便了用户对软件的理解与使用方便,又能让他人体会到我们的设计原则,对我们以后的发展,对下次软件的设计大有帮助。
第三处是学会建模
自己以前很不重视这些,对上学期uml的学习也极其不认真,读了这本书以后,我明白了图形建模的重要性,建模的过程实际上就是整理思路的过程,可以帮助我们快速理解这个系统的需求,基本上建模完成,这个系统也就基本做出来了。
第四处是软件服务始终都要记住用户的选择
用户是第一位,我们做软件是为了满足用户的需求,一定要始终记得用户需要的是什么,用户第一步说我要用英文,那么从开始到中间的传递各种数据到最后结束都要始终用英文,这才叫始终记住用户的选择。