大二寒假作业之《构建之法》读后感3

        第五章主要讲了什么是团队以及常见的开发流程。文章举了搬砖的有趣的例子,酒吧前三三两两的蹲着一些人,有的人前面放着纸板,上面写着“java,五毛一行”,“通吃SQL,NoSQL”,大智喊了一嗓子搬砖管饭有没有?于是七八个人跟着他走了。作者这时问他们是团队吗,然后提出了团队的概念:1.团队要有一致的目标。一个团队的成员不一定要同时工作;2,团队成员有各自的分工,互相依赖合作,共同完成任务。显然搬砖团队显然并不符合以上两点:搬砖团队每个人都是能搬多少搬多少,不行就结钱走人;他们每个人的工作都互不影响,一个人走了并不影响其他人的搬砖。

        作者又从足球队由一窝蜂跟着球跑到变成分工明确的足球团队引出了软件团队的工作模式。有主治医生模式,明星模式,社区模式,业余剧团模式,秘密团队模式,特工团队,交响乐模式,爵士乐模式等等。每一种模式都有自己的特点,有的是有一个首席程序员其他人打下手,有的是凭自愿每个人参加自己有兴趣的项目不求回报,有的是秘密进行没有外界干扰等等。很多软件公司的团队最后都演变成了宫那个团队,具备不同能力的同事们平等协作,共同完成一个功能。但是有一种团队模式叫官僚模式,每个组员头上都有一个小老板,小老板头上又有钟老板,中老板头上有大老板,跨组织建的沟通很困难,应用不好就会变成老板驱动型。

        作者介绍完团队模式后紧接着介绍了软件开发流程模式。软件开发流程不断进步不断发展,就如同之前的足球团队由一开始的一窝蜂到分工明确。对于刚学习软件工程的我们来说,写了再改的模式是最常见的了。它最符合:只用一次的程序,看过就扔的程序,一些不适用的演示程序。这正好符合我们的软件工程作业。但这种方法并不能做出实际使用的软件。所以软件行业从其他的成熟行业里借鉴学习作,总结出了瀑布模型。遵循分析,设计,实现,销售,维护的基本过程,但是此过程在返回去修改时就非常困难,甚至是不可能的,此模型描述了单向的不可逆的生产过程。所以人们又修改这个模型,在各个阶段做到回溯,但是这样各个步骤之间是分离的而软件生产偶成中各个步骤不能严格的分离出来,回溯修改很难。而且还有一个致命的问题就是软件是最后才会出现,而客户等不起,且最后得到的软件不一定是客户希望的。于是有了渐进交付的开发流程,发布多个早起版本,根据用户的体验修改完善软件,最后发布完整的软件。

原文地址:https://www.cnblogs.com/fengchuiguobanxia/p/14336343.html