构建之法阅读笔记03

   说到开发模式,对我来说可能是个比较陌生的词汇,没办法,且不说我还是大二,就说在大学校园了。

我们每天的写的程序也大多是老师布置的任务,很少,也可以说是几乎没有特别大型的程序,

所以,就别提什么开发模式了,大多是老师布置了任务,然后我们就根据最近所学,或者上网查查资料,

基本上,就可以应付老师的要求了。

  但是,经过我阅读构建之法,认识到了,老师布置的任务,毕竟和以后我们工作之后要做的项目还是有很大的区别的。

这个时候,项目就不是一个查查资料,看看书就可以解决的问题了。

成熟的团队通常都会有着一个比较成熟的或者是,已经完善的软件开发模式。

下面就来说,一些比较有名的开发模式。

  同敏捷开发同样具有影响力的是微软的MSF开发模式,他有着一下几个基本原则:

一、推动信息共享与沟通

所有的信息都保留并公开,讨论要包括所有涉及的角色,决定要公开并告知所有人。当然,对牵涉到的技术机密、安全性等信息要采取必要的保护措施

这样确实有很多好处,首先,信息都保留了下来,其中更是对的,错的都有。

这一方面当我们想查询自己以前的程序时,可以很方便的找到程序,并且,我们可以不断的从自己的错误中积累经验。

二、为共同的远景而工作

这里 “共同的远景” 是指产品的远景,在同一时段,团队里的人的目标应该一致,这样才能真正的齐心协力,把软件开发好。

三、充分授权和信任

关键在于 “授权” 。

在一个高效的团队里,所有成员都应该能得到充分的授权,他们有权在职权范围内按照自己的承诺完成任务。

同时,他们也充分信任其他同时能实现各自的承诺。

类似的,团队的顾客也认为团队能兑现承诺,并进行相应的规划。

四、各司其职,对项目共同负责

团队中的每个角色都有自己的职责,如果出了问题,这个角色就要负责任。

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

六、保持敏捷,预期和适应变化

软件工程,唯一不变的是变化。

七、投资质量

八、学习所有的经验

九、与顾客合作 

    以上就是MSF的九项基本原则。

MSF同样还支持敏捷开发模式和CMMI开发模式。

    软件之所以诞生,就是为了解决现实社会和生活中的各种问题。那么软件团队想要找出需求具体有下面的几个步骤:

一、获取和引导需求

二、分析和定义需求

三、验证需求

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

  软件产品的利益相关者:用户、顾客、市场分析者、监管机构、系统/应用集成商、软件团队、软件工程师

  那么,怎么获取用户需求呢?-----用户调研

1.焦点小组  2.深入面谈  3.卡片分类  4.用户调查问卷  5.用户日志研究  6.人类学调查  7.眼动跟踪研究  8.快速原型调研  9.A/B测试

  做一个软件,不仅要能做好他,还要能在做软件之前,很好的预估做好软件的时间。那么怎么能够提高我们的估计能力呢?

1.参考前人的经验  2.运用公式计算  Y=X+(-)X/N  (Y代表实际用的时间,X代表估计的时间,N代表该程序员做过类似此项目的次数)

  在学程序语言的时候,我们知道,在解决大型问题的时候,解决的最好方法是分而治之。

同样的,对于一个大型的项目,我们同样应该采用分而治之的方法来解决问题。

  对于我们学软件的学生来说,可能我们只知道开发和测试,但实际上,在公司里还有一类人,他们做着开发和测试之外的事情,那就PM,人称项目经理。

具体做的事情有:1.和客户交谈,组织用户调查,发现用户需求  2.了解和比较竞争对手的产品  3.怎么让软件变得可用、有用  4.怎么改进团队的流程等等。

简而言之,PM做开发和测试之外的所有事情。

并且,PM还要学会风险管理。

那么,PM的能力要求和任务是什么?

一、观察、理解和快速学习能力

二、分析管理能力

三、一定的专业能力

四、自省的能力

下面讲讲作为大学生,如果想要做PM,需要准备着什么?

1.参加各种社团并组织一些活动,最好是草根的活动,而不是由上而下规定的活动;

2.选修各种相关学科的课程

3.争取在实际的企业中实习

4.和小伙伴一起,搞点小生意、小创业

  

posted @ 2017-02-14 13:34  Kefi123  阅读(227)  评论(0编辑  收藏  举报