自学有感4

软件工程同其他工程项目一样存在风险。很多时候,客户的需求是难以捕捉的。对于客户所提供的需求,不同的利益相关者有着不同的理解。最后很有可能得出的产品与客户的需要的十分不同。当然有很多调研方法去调研客户的需求(如:焦点小组、深入面谈、卡片分类、用户调查问卷„.),但如果做的太过有可能会“深陷泥潭”,被快速发展的互联网抛弃。

第六章了解到敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。本章也包含了许多以前不了解的新知识如XP、FDD、SCRUM等方法论。

在第八章讲了NABCD模型用来分析需求、提出创意。得到需求后,是对功能的定位,然后是对项目的计划和估计。其实过去在上数据库课程时,老师有让我们做系统分析与设计,当时并没觉得需求分析有多重要,看过本章后对其重要性有了更深的认识。PM(项目经理)是软件团队的一个重要角色。他可以领导大家把问题“分而治之”,当然公司不同PM职能略不同。

在第九章主要讲了微软PM的来历、职能、能力要求及任务等。我认为PM像轴承的润滑剂,这一职位需要沟通能力及专业技巧都有的人才能担当。软件开发要考虑不同的用户,尤其是典型用户的需求,然后才可以构架程序。软件开发中文档也必不可少,团队需要文档来沟通。设计的规格说明书有两种:功能说明书与技术说明书。

 

posted @ 2017-05-07 15:33  喆喆123  阅读(86)  评论(0编辑  收藏  举报